As stated here:
When you install version 3.5, you get the 2.0 and 3.0 layers automatically, and apps that were built for versions 2.0, 3.0, and 3.5 can all run on version 3.5. However, the .NET Framework 4 ends this layering approach, so apps built for 2.0. 3.0, or 3.5 will not work on version 4 or later.
Admittedly, MS's docs are confusing - in the very same article it's stated "You do not have to install previous versions of the .NET Framework or the CLR before you install the latest version." I believe this statement is simply referring to the install order, however; 3.5 (+ 3.5.1) can be installed after 4.0 or 4.5 are on the system.