title: EF - Linq Expression and using a List of Ints to get best performance
body: <p>So I have a list(table) of about 100k items and I want to retrieve all values that match a given list.</p>
  
  <p>I have something like this.
  the Table Sections key is NOT a primary key, so I'm expecting each value in listOfKeys to return a few rows.</p>
  
  <pre><code>List&lt;int&gt; listOfKeys = new List&lt;int&gt;(){1,3,44};
  var allSections = Sections.Where(s =&gt; listOfKeys.Contains(s.id));
  </code></pre>
  
  <p>I don't know if it makes a difference but generally <code>listOfKeys</code> will only have between 1 to 3 items.</p>
  
  <p>I'm using the Entity Framework.</p>
  
  <p>So my question is, is this the best / fastest way to include a list in a linq expression?
  I'm assuming that it isn't better to use another .NET<code>ICollection</code> data object.  Should I be using a Union or something?</p>
  
  <p>Thanks </p>