Boxing/unboxing - only value types? Ref.types - casting? <p>From MSDN I read that boxing/unboxing is for treating <strong>value</strong> types as objects. But when I read about ArrayList, it reads that it does boxing as well. So I am quite confused as ArrayList holds value and reference types as objects. Also the following is not unboxing in terms of terminology, its just casting?</p> <pre><code>ArrayList a=new ArrayList(); a.Add(someClass); someClass x=(someClass)a[0]; </code></pre>