If you generate a WCF VB proxy that contains a DataContract type using svcutil.exe , calling a method that returns the type will always incorrectly return an uninitialized type. This works correctly for C#. John Stallo, a peer of mine, spent some time