Advantage of using GUID:
Generates a unique value in each table and each database and this allows for easy merging / merge / migration of records between different databases.
You can generate your IDs in the application without needing the database, for example:
Guid meuNovoGuid;
meuNovoGuid = Guid.NewGuid();
Disadvantages of using GUID:
I see the GUID as a large and unnecessary number, this can have serious performance and storage implications if you are not careful.
Mainly for the case of an Asp.Net MVC application, where we have url's friendly is much simpler terms:
http:\localhost\Cliente\Detalhes34
instead of http:\localhost\Cliente\Detalhes1E9502-E283-4F87-9049-CE0E5C76B658
Using int in your Asp.Net MVC application will be easier to understand, display those IDs for users in grids for example and you will get better performance as well.