title: Use LINQ to move item to top of list
body: <p>Is there a way to move an item of say id=10 as the first item in a list using LINQ?</p>
  
  <pre>
  Item A - id =5
  Item B - id = 10
  Item C - id =12
  Item D - id =1</pre>
  
  <p>In this case how can I elegantly move Item C to the top of my <code>List&lt;T&gt;</code> collection?</p>
  
  <p>This is the best I have right now:</p>
  
  <pre><code>var allCountries = repository.GetCountries();
  var topitem = allCountries.Single(x =&gt; x.id == 592);  
  var finalList = new List&lt;Country&gt;();
  finalList.Add(topitem);
  finalList = finalList.Concat(allCountries.Where(x=&gt; x.id != 592)).ToList();
  </code></pre>