How do ValueTypes derive from Object (ReferenceType) and still be ValueTypes?

C# doesn’t allow structs to derive from classes Your statement is incorrect, hence your confusion. C# does allow structs to derive from classes. All structs derive from the same class, System.ValueType, which derives from System.Object. And all enums derive from System.Enum. UPDATE: There has been some confusion in some (now deleted) comments, which warrants clarification. … Read more