title: How would you do a "not in" query with LINQ?
body: <p>I have two collections which have property <code>Email</code> in both collections. I need to get a list of the items in the first list where <code>Email</code> does not exist in the second list. With SQL I would just use "not in", but I do not know the equivalent in LINQ. How is that done?</p>
  
  <p>So far I have a join, like...</p>
  
  <pre><code>var matches = from item1 in list1
  join item2 in list2 on item1.Email equals item2.Email
  select new { Email = list1.Email };
  </code></pre>
  
  <p>But I cannot join since I need the difference and the join would fail. I need some way of using Contains or Exists I believe. I just have not found an example to do that yet.</p>