Introduction

Asynchronous programming is an exciting feature in C#. It allows you to continue program execution on the main thread while a long-running task finishes its execution. When this long-running task is complete, a thread from the thread pool will return to the method containing so that the long-running task can continue execution. The best way to learn and understand asynchronous programming is to experience it. The following recipes will illustrate some of the basics to you.