title: Asynchronous read from Console.In
body: <p>I just realized that TextReader, the type of Console.In, doesn't have a BeginRead-method.</p>
  
  <p>How would one go about to achieve asynchronous reads from Console.In?</p>
  
  <p>My first idea is to get a HANDLE to stdin and get a waiter to wait for that handle to signal. But that involved a lot of Win32-calls.</p>
  
  <p>Is there a more simple way to do this?
  Perhaps something on the lines of:</p>
  
  <pre><code>Stream s = (Stream) Console.In;
  s.BeginRead(..)
  </code></pre>
  
  <p>Any ideas?</p>