title: Any good async workflow patterns for C# 4?
body: <p>Can anyone point me to some patterns for handling async workflows in C#? I know this is coming soon in C# 5 but I was wondering if anyone had already done an implementation in C# 4 that approximates the same effects?</p>
  
  <p>Basically I'm writing a lot of async code in Silverlight 4 like this:</p>
  
  <pre><code>CallService(
      (service) =&gt; service.DoSomething(1, 2, 3),
      (response) =&gt;
      {
          // some local code
  
          // need to call another service async
          CallService(
              (service) =&gt; service.DoSomethingElse(4, 5, 6),
              (response) =&gt;
              {
                  // even more nested async calls, you get the idea...
              }
          )
      }
  );
  </code></pre>
  
  <p>The nested callbacks are getting to me. I really like the way F# provides async workflows to handle this, as you end up writing code that looks and feels synchronous, which is what I really want.</p>