title: copying a list to a new list - More efficient & Best Practice
body: <p>What is the appropriate way of copying a list to a new list?
  And What is the most efficient way of copying a list to a new list?</p>
  
  <p>By efficient, not code efficiency, more in the behind the scenes framework sense.</p>
  
  <pre><code>List&lt;String&gt;List2 = List.ToList();
  </code></pre>
  
  <p><strong>Or:</strong></p>
  
  <pre><code>List&lt;String&gt;List2 = new List&lt;String&gt;();
  foreach (string item in List)
  {
   List2.Add(item);
  }
  </code></pre>
  
  <p><strong>Update:</strong></p>
  
  <p>What about more efficient IL code?</p>