title: Creating asynchronous WCF clients without using Service References
body: <p>Currently I do not use Service References as I feel the code it autogenerates is more weight than I need. Instead I generate a proxy class by doing:</p>
  
  <pre><code>public class MyClient : ClientBase&lt;IMyService&gt;, IMyService
  </code></pre>
  
  <p>This has worked great for me, no proxy classes are generated so I reuse the same datatypes. But this only lets me create synchronous client methods.</p>
  
  <p>What would it take to generate async versions? I have taken a look at the autogenerated code that adding a Service Reference would do and it seems like soo much boilerplate. A ton of begin/end/onbegin/oncomplete associated event arg datatypes etc etc.</p>
  
  <p>Is there a simpler way with less scaffolding needed to create async client methods?
  My ultimate end goal is to be able to use the new c# 5 async/await keywords on webservice clients</p>