title: Retrieve information from a REST service asynchronously while throttling the number of requests
body: <p>I have a program that needs to get some data from an Atom feed.  I tried two approaches and neither of them worked well.</p>
  
  <p>I've used WebClient to synchronously download all the posts I need, but as there are a few thousand and the service is slow it takes many hours.</p>
  
  <p>I've tried (for the first time) async/await, the new HttpClient and Task.WhenAll. Unfortunately that results in thousands of requests hitting the service and bringing it down.</p>
  
  <p>How can I run say 100 requests in parallel?</p>