Difference between Boxing and Unboxing in C#
Boxing and unboxing is an important concept in C#. C# Type System contains three data types: Value Types (int, char, etc), Reference Types (object) and Pointer Types. Basically, it converts a Value Type to a Reference Type, and vice versa. Boxing and Unboxing enables a unified view of the type system in which a value of any type can be treated as an object.
| Boxing | Unboxing | ||
|---|---|---|---|
| It convert value type into an object type. | It convert an object type into value type. | ||
| Boxing is an implicit conversion process. | Unboxing is the explicit conversion process. | ||
| Here, the value stored on the stack copied to the object stored on the heap memory. | Here, the object stored on the heap memory copied to the value stored on the stack . | ||
Example:
Output: Value type of val is 2000 Object type of val is 2019 | Example:
Output: Value of o is 2019 Value of x is 2019 |
Attention reader! Don’t stop learning now. Get hold of all the important DSA concepts with the DSA Self Paced Course at a student-friendly price and become industry ready.


