title: Differences between Parallel.ForEach and await ForEachAsync
body: <p>Is there any reason to choose Parallel.ForEach instead of await ForEachAsync in any situation (or vice-versa)? or they are virtually the same?</p>
  
  <pre><code>await collection.ForEachAsync( m =&gt; { m.DoSomething(); } );
  </code></pre>
  
  <p>VS</p>
  
  <pre><code>Parallel.ForEach( collection, m =&gt; { m.DoSomething(); } );
  </code></pre>