title: Enumerable.Range - When does it make sense to use?
body: <p>When programming it's almost instinctive deciding when to use a for loop, or foreach, but what is the determining factors or problem space for choosing to use Enumerable.Range? </p>
  
  <p>A <strong>For Loop</strong> is chosen when we want to iterate a set number of times (over a simple data type) to calculate/do a repetitive task.</p>
  
  <p>A <strong>For Each</strong> is similar, but chosen when we want to iterate over a list of complex objects to calculate/do a repetitive task.</p>
  
  <p>Again, what's the determining factors for using an Enumerable.Range?</p>
  
  <pre><code>IEnumerable&lt;int&gt; squares = Enumerable.Range(4, 3).Select(x =&gt; x * x);
  </code></pre>