Interessante ed esauriente articolo di
mikeperetz sull'invocazione di metodi in modo asincrono (
Asynchronous Method Invocation: How to use .NET to call methods in a non-blocking mode).
Risale al luglio 2006, ma lo considero il mio bigino.
Contiene interessanti spunti per la gestione delle eccezioni, il passaggio parametri (by val, ref e out), e anche un cenno al pattern Command.