Yes, there may be a duplicate, but it will not. The GUID is 32 char long and each char can be 0-F (hexadecimal). This means that there are 16 ^ 32 possibilities.
So, if you generate 1,000,000 GUIDs every second for 10 years, the likelihood that you will create a duplicate is around 1/1079028307080601418897053.
In my opinion, a GUID is a very good candidate for a primary key, which you can generate if from anywhere without preliminary verification if it already exists in the database.
source share