Within C#, there are actually 6 overloads to the Guid structure.
Guid g = new Guid(); // Creates a GUID structure with {00000000-0000-0000-0000-000000000000} as it's value.
Running the above code in C# will not throw an error, compiles perfectly, and the overload is defined within intellisense. This can cause confusion, especially when you're expecting a truly unique ID to be generated from the constructor. If you run into this, just simply replace "new Guid()" with "Guid.NewGuid()".