There's a Parallel Computing Developer Center up on MSDN that is great resource for finding ways to solve parallel computing challenges. I've highlighted a couple of the interesting articles that scientists/researchers will find interesting in dealing with manycore and clusters. One I'm really interested in is how PLINQ (Parallel Language Integrated Query) can help scientists get data from SQL or other datasources efficiently.
Microsoft’s Parallel Computing developer center is dedicated to providing information, ideas, community, and technology to developers to make it easier to write programs that perform and scale well on parallel hardware.
The computational power of manycore processors, new programming models and platform, and advanced research in usability promise to change the way people interact with computers. This paper describes how Microsoft and industry partners are working together to enable businesses, software and hardware vendors, and individuals to take advantage of the “manycore shift.”
Parallel Extensions to the .NET Framework is a managed programming model for data parallelism, task parallelism, and coordination on parallel hardware unified by a common work scheduler. Parallel Extensions makes it easier for developers to write programs that scale to take advantage of parallel hardware—providing improved performance as the numbers of cores and processors increase—without having to deal with many of the complexities of today’s concurrent programming models. Parallel Extensions provides library-based support for introducing concurrency into applications written with any .NET language, including but not limited to C# and Visual Basic.
“Declarative Data Parallelism” with the Parallel Extensions is achieved through Parallel LINQ. This video explains how to parallelise your LINQ queries, how it works under the covers and how to configure it for advanced scenarios.