.NET Proxy › Using a .NET Proxy › Asynchronous Processing
The code is broken up into four distinct sections, as you can embed each piece at different locations within the user application.