Do .Net components that were compiled against the .Net Framework 3.5 run on a system that has only .Net Framework 4.0 installed?
Or in other words, does the .Net Framework 4.0 Installer include the .Net Framework 3.5?
The .NET 4.0 installer doesn't include the .NET framework 3.5. There is some information on this topic in MSDN:
The .NET Framework 4 is highly compatible with applications that are built with earlier .NET Framework versions, except for some changes that were made to improve security, standards compliance, correctness, reliability, and performance.
The .NET Framework 4 does not automatically use its version of the common language runtime to run applications that are built with earlier versions of the .NET Framework. To run older applications with .NET Framework 4, you must compile your application with the target .NET Framework version specified in the properties for your project in Visual Studio, or you can specify the supported runtime with the
<supportedRuntime>
Element in an application configuration file.
You can install .NET 3.5 and .NET 4.0 along side each other. Visual Studio 2010 also includes improved targetting support for .NET 3.5. ScottGu's blog talks about this in more detail.