Parallel Processing and Concurrency in the .NET Framework

.NET Framework (current version)

The .NET Framework provides several ways for you to use multiple threads of execution to keep your application responsive to your user while maximizing the performance of your user's computer.

Describes the basic concurrency and synchronization mechanisms provided by the .NET Framework.

Asynchronous Programming Patterns
Provides a brief overview of the three asynchronous programming patterns supported in the .NET Framework:

Parallel Programming
Describes a task-based programming model that simplifies parallel development, enabling you to write efficient, fine-grained, and scalable parallel code in a natural idiom without having to work directly with threads or the thread pool.

Development Guide