title: Console application: How to update the display without flicker?
body: <p>Using C# 4 in a Windows console application that continually reports progress how can I make the "redraw" of the screen more fluid?</p>
  
  <p>I'd like to do one of the following:
   - Have it only "redraw" the part of the screen that's changing (the progress portion) and leave the rest as is.
   - "Redraw" the whole screen but not have it flicker.</p>
  
  <p>Currently I re-write all the text (application name, etc.). Like this:</p>
  
  <pre><code>Console.Clear();
  WriteTitle();
  Console.WriteLine();
  Console.WriteLine("Deleting:\t{0} of {1} ({2})".FormatString(count.ToString("N0"), total.ToString("N0"), (count / (decimal)total).ToString("P2")));
  </code></pre>
  
  <p>Which causes a lot of flickering.</p>