How to create an installable layout for the final release of the .NET Framework 3.5

Back when the .NET Framework 3.5 beta 2 was released, I posted this item on my blog describing how to download the individual pieces of the .NET Framework 3.5 beta 2 in order to create an installable layout that can be used to create an installer that includes the .NET Framework 3.5 or for network deployment.  If you have looked at those instructions, you'll notice how long, tedious and potentially error-prone they are.

Fortunately, as Bret Grinslade noted in this blog post, in the final release of the .NET Framework 3.5, a new package is available for download that includes all of the pieces of the .NET Framework 3.5 so that you no longer need to download the pieces individually in order to assemble an installable layout.

The combined installation package for the .NET Framework is available for download at https://download.microsoft.com/download/6/0/f/60fc5854-3cb8-4892-b6db-bd4f42510f28/dotnetfx35.exe.

After downloading this package, you can extract the contents by running dotnetfx35.exe /x and it will prompt you with a location to extract the contents to.  From there, you can trim down the installer payload if appropriate in your deployment scenario in the following ways:

  • If you do not plan to support installing on Windows Vista at all or plan to require Windows Vista SP1 in your scenarios (which will include the .NET Framework 2.0 SP1 and 3.0 SP1 so they do not have to be installed separately), you can remove the MSU files in the dotNetMSP folder
  • If you only plan to support installing on Windows Vista or later, you can remove the dotNetFX20 and dotNetFX30 folders.  These folders contain the .NET Framework 2.0 SP1 and .NET Framework 3.0 SP1 packages that are used on Windows XP and Windows Server 2003
  • If you plan to only support specific processor architecture(s), you can remove the appropriate payload for the processor architectures you do not plan to support (ia64, x64 or x86)

Now you can run dotnetfx35setup.exe from the extracted folder to start installing the .NET Framework 3.5.

One important note - if you decide to optimize your installer payload using any of the suggestions above, and it turns out that you over-optimized and setup really does need one of the packages that you deleted from the extracted folder, then .NET Framework 3.5 setup will attempt to automatically download the package for you if you have a live Internet connection during setup.  If it needs to download a package and the system does not have a live Internet connection, then .NET Framework 3.5 setup will fail to install.