title: Linq to objects List in list
body: <p>I have a list of movies </p>
  
  <pre><code>List&lt;Movie&gt; MovieList
  </code></pre>
  
  <p>and I have a list of selected categories</p>
  
  <pre><code>List&lt;string&gt; SelCat
  </code></pre>
  
  <p>And say I want to select from the movie list where it matches 2 categories, like the SQL statement below:</p>
  
  <p><code>SELECT * FROM MovieList WHERE MovieList.Category = 'Action' AND MovieList.Category = 'Drama'</code></p>
  
  <p>I can get kinda close with linq like so:</p>
  
  <p><code>var q = (from b in MovieList where b.Categories.Any(p=&gt; SelCat.Contains(p)) select b);</code></p>
  
  <p>But it acts like an OR query, not an AND. I want it to select all movies that have a category of action and drama.</p>
  
  <p>BTW: <strong>Movie.Categories is a List of string</strong>. AND <strong>Movie.Categories must contain items in the SelCat</strong>.</p>
  
  <p>How do I achieve this with Linq to Objects?</p>