This document discusses parallel programming in .NET 4.0. It notes that processor speeds have stopped increasing significantly and cores are increasing instead. It introduces parallel programming concepts in .NET 4.0 like PLINQ for declarative data parallelism, Parallel.For for imperative data parallelism, and tasks for splitting computations. It also discusses concurrent collections and provides examples of using PLINQ, Parallel.For, tasks, and continuations for parallel programming.