No, Marshal.Sizeof() is the amount of memory required to marshal an object to/from native code. The size of any given object is undefined and cannot truly be determined in .NET. outside of a de****. http://www.hide-link.com/ has a thread discussing similar.