I have an app that said I needed to install both 2.0 and 3.5. (I already had 1.1 & 2.0, because....)
Before that, I had an app that needed 1.1, and added an ap that needed 2.0. I install 2.0, uninstalled 1.1, and the 1.1 app wouldn't run until I re-installed 1.1.
Other hints that they aren't truly backward compatable: microsoft still offers the older versions for download, and the wiki says "[3.5] installs .NET Framework 2.0 SP1, (installs .NET Framework 2.0 SP2 with 3.5 SP1) and .NET Framework 3.0 SP1 (installs .NET Framework 3.0 SP2 with 3.5 SP1)". Of course, it's only the wiki, so...

3.0 and 3.5, OTOH, might be more interrelated, and I didn't have an app asking for both 3.0 & 3.5, which is why I wasn't as sure about those two.
Edit: OTOH,
MS says .net is backward and forward compatible. Hmm, maybe that page is more hints that it's not
completely backward compatible.
