Types and there definitions in C#.NET
Base class that represents any type.
Base class that represents any value type.
Any data types that are accessed through a reference and stored on the heap.
Built-in Value Types
Includes most of the standard primitive types, which represent numbers, Boolean values, or characters.
Sets of enumerated values.
User-defined Value Types
Types that have been defined in source code and are stored as value types. In C# terms, this means any struct.
Data types that provide information about themselves for the benefit of the garbage collector .
Any type that contains an array of objects.
Types that are self-describing but are not arrays.
Types that are designed to hold references to methods.
User-defined Reference Types
Types that have been defined in source code and are stored as reference types. In C# terms, this means any class.
Boxed Value Types
A value type that is temporarily wrapped in a reference so that it can be stored on the heap.