Now that it’s easy in c#, I’m a big fan of asynchronous and parallel programming. You can make multi-step code go multiple times faster, and prevent the evil .NET ThreadPool from blocking and throttling your code all in one step. Although there is some great performance advice in articles such as MSDN’s Async Performance: Understanding the Costs of Async and Await, I’d like to go a little deeper o