Parallel programming in .NET - Introduction