Using .NET 3.5 Client Profile (BETA)

I am releasing/distributing a Windows application and service in a couple weeks.  Both application use the .NET 3.5 Framework and are wrapped up in a custom installer.  Rather than having my installer prompt the user to download the .NET 3.5 framework installer, I’m packaging it up with my setup program.  Very simply, I check to see if the framework is installed and then I silently expand and install .NET 3.5 if applicable.  Currently I am using the “online” version of the .NET 3.5 Framework installer which weighs in at 2.7 MB. The arguably unnecessary file* completely bloats my setup package but the total size is, in my opinion, within reason.

You may have noticed that .NET Framework installs have gotten unacceptably large since the 1.0 days:

  • .NET Framework 1.0 Redist: 19.7MB
  • .NET Framework 1.1 Redist: 23.1MB
  • .NET Framework 2.0 Redist: 22.4MB
  • .NET Framework 3.0 Redist: 50.3MB ( x86 )
  • .NET Framework 3.0 Redist: 90.1MB ( x64 )
  • .NET Framework 3.5 Redist: 197.0MB

With consideration for the distribution size of the .NET 3.* releases, I should be thankful for the “online” version, but I’m not.  The “online” version is still too big especially if you know the ultra-slim Microsoft .NET Framework 3.5 Client Profile (BETA) weighs in at a mere 217 KB by containing only a subset of features (Common Language Runtime, ClickOnce, Windows Forms, Windows Presentation Foundation and Windows Communication Foundation) found in the full installation of the .NET Framework. image

To add to my turmoil, I already know that both of my applications can use the bootstrapper as confirmed by selecting the “Client-only Framework subset” option within my project properties followed by a rebuild without warnings.

But, alas, the Client Profile installer is still in BETA with no published final release date other than “this summer.”  The fact that it is still in BETA isn’t a deal breaker, but the BETA version does put the end user in a less-than-optimal place when it comes to managing future .NET Framework installs.  Per the documentation:

The Microsoft .NET Framework 3.5 SP1 Client (BETA) cannot be upgraded to the full .NET Framework. Users will need to uninstall the .NET Framework 3.5 SP1 Client (BETA) before installing .NET Framework 3.5 SP1. This will be corrected with the final release of .NET Framework 3.5 SP1.

That last sentence haunts me….

Maybe I’m being overly sensitive but I don’t want my users having to uninstall .NET if they choose/need to upgrade the .NET framework.  After all, the primary reason I am packaging up the .NET installer in the first place is for the sake of user convenience (and I suspect the majority of user’s aren’t all the tech-savvy.) 

I am left weighing my options.  I can either stick with the sub par “Online” version of the installer and cause .NET Framework upgrade grief for my user’s going forward OR I can improve the install experience of my product by distributing the Client Profile installer thus causing possible future inconvenience.  Right now, I am leaning towards the former option, but I could be steered otherwise — especially if the final version of the Client Profile installer were released, let’s say, this afternoon. 

I’m torn. What would you do? 

* Side note: I would love to exclude the .NET installer and only download it to the client’s machine and install if needed, but I feel my current approach is reasonable for now. That being said, I’m sure I will be messing around with this alternative option soon.  I’m currently using Inno Setup which can seemly do anything so there’s hope.


  1. .NET Framework Size – Christopher Painter
  2. .NET 3.5 Framework Distribution Size – Rick Strahl
  3. Visual Studio 2008 and .NET Framework 3.5 Service Pack 1 Beta – Scott Guthrie



  1. you’re actually a good webmaster. The web site loading speed is amazing. It seems that you are doing any distinctive trick. In addition, The contents are masterpiece. you’ve done a wonderful task on this topic!

  2. Hey would you mind stating which blog platform you’re working with? I’m looking to start my own blog soon but I’m having a tough time choosing between BlogEngine/Wordpress/B2evolution and Drupal. The reason I ask is because your design and style seems different then most blogs and I’m looking for something completely unique. P.S Sorry for being off-topic but I had to ask!

  3. I have noticed that of all forms of insurance, medical care insurance is the most dubious because of the turmoil between the insurance plan company’s necessity to remain afloat and the client’s need to have insurance cover. Insurance companies’ revenue on wellness plans are incredibly low, thus some organizations struggle to make money. Thanks for the concepts you write about through this site.