title: Using Parallel foreach in an API request process?
body: <p>It is correct to use a <code>Parallel.ForEach</code> while processing a request? I ask this because the <code>async task</code> was designed to attendee more requests as possible, not fast as possible which is what <code>Parallel.ForEach</code> will do.</p>
  
  <p>Simple example:</p>
  
  <pre class="lang-cs prettyprint-override"><code>public async Task&lt;OperationResult&gt; ProcessApiRequest(List&lt;string&gt; ids)
  {
      Parallel.ForEach(ids, async (id) =&gt;
              {         
                  await this.doStuff(id);
                  await this.doAnotherStuff(id);
              });
  
      return OperationResult.Success();
  }
  </code></pre>
  
  <p>Imagine I can receive 1 id or 1 million id's, and I want to attendee as much request as possible. Since my threads will be busy processing 1 million id's, it will have struggle attendee new requests, I'm right?</p>
  
  <p>Thank you!</p>