This document discusses patterns for parallel programming with .NET 4. It begins by explaining why parallel programming is important given trends in hardware. It then discusses where developers should start with parallel programming and provides an example financial application called Adatum Dash. The document demonstrates several parallel programming patterns including futures, parallel loops, parallel aggregation, parallel tasks, pipelines, and dynamic task parallelism. It emphasizes architecting applications for parallelism from the start and using patterns to expose potential parallelism while limiting shared state and synchronization.