I find working with GUIDs very cumbersome and in the application that I inherented at my company, I haven't seen any advantage of using them, normal "int with identity(1, 1) not null" would have fit the bill perfectly.
I found this article explaining a bit on the purpose and origin of the GUID:
One has to consider the purpose and functionality of the application and the network environment it will be deployed on to determine either using GUIDs or Ints as primary keys?
(I'm probably not mentioning half of the things to look at in making such a decision...)
So I think it's going to be a case by case evaluation to find the best solution.