title: Remove items from list 1 not in list 2
body: <p>I am learning to write <a href="http://msdn.microsoft.com/en-us/library/bb397687.aspx" rel="noreferrer">lambda expressions</a>, and I need help on how to remove all elements from a list which are not in another list.</p>
  
  <pre><code>var list = new List&lt;int&gt; {1, 2, 2, 4, 5};
  var list2 = new List&lt;int&gt; { 4, 5 };
  
  // Remove all list items not in List2
  // new List Should contain {4,5}    
  // The lambda expression is the Predicate.
  list.RemoveAll(item =&gt; item. /*solution expression here*/ );
  
  // Display results.
  foreach (int i in list)
  {
      Console.WriteLine(i);
  }
  </code></pre>