title: Pass List to method without modifying original list
body: <p>Is this the only way of passing a List to a method and editing that List, without modifying the original List?</p>
  
  <pre><code>class CopyTest1
  {
      List&lt;int&gt; _myList = new List&lt;int&gt;();
      public CopyTest1(List&lt;int&gt; l)
      {
          foreach (int num in l)
          {
              _myList.Add(num);
          }
          _myList.RemoveAt(0); // no effect on original List
      }
  }
  </code></pre>