When should you use struct and not class in C#? My conceptual model is that structs are used in times when the item is merely a collection of value types. A way to
First: Interop scenarios or when you need to specify the memory layout
Second: When the data is almost the same size as a reference pointer anyway.