going back to the original question.
> I'm beginning to wonder if Microsoft has lost sight of the initial goals of the platform ...
so what is the original goal of the framework? the way i see it, the original goal of .net framework is to provide a framework (libraries and tools) for development on windows platform which are easy to use. back then before .net framework, windows developers have to work with c++. c++ offers a lot of power but it is very easy for developers to make mistakes. mistakes that may affect the whole operating system. .net framework lowers the difficulty and complexity developing on windows platform.
> Do you think there are too many libraries in the Framework? Are you confused by the multitude of options for something as straightforward as data access (ADO.NET, LINQ to SQL, Entities, roll your own)?
well, like i said above. the goal is to provide a framework for windows development. and windows is a huge operating system that provides everything. so... that can't be avoided. there are some libraries that are attacking the same (or similar) problem. but i guess there is no one ideal solution for all problems. all the libraries are attacking a problem from different angles. i think it is always nice to be able to choose between solutions rather than being forced to use one and only one.
if you changed the name of '.net framework' to 'windows framework' than probably, it will make more sense.