title: In C#, when I set a new list equal to another list, does it set the new list as a pointer to the other list or is it actually creating a new list?
body: <p>When I set a new list equal to another list, does it set the new list as a pointer to the other list or is it actually creating a new list?</p>
  
  <p>For example,</p>
  
  <p>Is...</p>
  
  <pre><code>List&lt;SomeType&gt; newList = oldList;
  </code></pre>
  
  <p>...the same as...</p>
  
  <pre><code>List&lt;SomeType&gt; newList = new List&lt;SomeType&gt;();
  newList.AddRange(oldList);
  </code></pre>
  
  <p>(oldList is a list of SomeType as well)?</p>