title: why .ToList().Distinct() throws error but not the .Distinct().ToList() with linq query
body: <p>i'm not able to know the difference between <strong>LinqQuery.ToList().Distinct()</strong> and <strong>LinqQuery.Distinct().ToList();</strong> for me both looks same.</p>
  
  <p>consider this sample code 
  :</p>
  
  <pre><code>List&lt;string&gt; stringList = new List&lt;string&gt;();
  
  List&lt;string&gt; str1  = (from item in stringList
                                  select item).ToList().Distinct();
  
  List&lt;string&gt; str2 = (from item in stringList
                                   select item).Distinct().ToList();
  </code></pre>
  
  <p>str1 shows an error as : "Cannot implicitly convert type 'System.Collections.Generic.IEnumerable' to 'System.Collections.Generic.List'. An explicit conversion exists (are you missing a cast?)"</p>
  
  <p>but no error for str2 .</p>
  
  <p>Please help me to understand the diffrence between these two.
  Thanks</p>