When .NET was initially launched, Microsoft released a single copy of the .NET Framework. This version ran with the one and only CLR that was released at the same time. As new versions of .NET were released, these two things tended to stay in step. A new version of the framework was matched with a new version of the CLR. However, as we moved from version 1 through version 4, the framework started becoming ever larger.
For part of .NET 3.5, Microsoft decided to create a subset of the full framework called the .NET 3.5 Client Profile. This wasn't a major change, but it created a subset of the full framework that could omit certain server-focused libraries. The result is a smaller deployment package for most client computers. The disadvantage, of course, is that it means you need to consider which .NET profile you will target, because the client profile contains only a subset of the full framework.
Now as we look at Windows 8 we see that Microsoft has added another framework platform specifically targeting Windows Metro style applications. In this case, however, the change isn't just to create a focused subset of features; it is designed with the idea that Metro as an alternate platform will have a different runtime and different features provided by the .NET Framework. With .NET 4.5 we are seeing an introduction of a completely different set of capabilities between the frameworks on these two platforms.
As noted ...