views:

56

answers:

4

I noticed that you can change the target platform in .NET applications to the Client Profile or the Full profile. What is the difference between the two? How should I choose which is the correct one for my project?

+1  A: 

This page on MSDN elucidates your doubts:

.NET Framework Client Profile

Leniel Macaferi
A: 

The Client Profile only installs a subset of .NET that is relevant to desktop applications. This means that in some cases, you have to use the Full profile to get some features. The Client Profile is a lot smaller of course, and I would recommend it for small desktop applications.

DMan
+1  A: 

Summarized from MSDN:

When targeting the .NET Framework 4 Client Profile, you cannot reference an assembly that is not in the .NET Framework 4 Client Profile. Instead you must target the .NET Framework 4.

The .NET Framework 4 Client Profile does not include the following features. You must install the .NET Framework 4 to use these features in your application:

  • .NET Framework Data Provider for
  • Oracle ASP.NET Advanced Windows
  • Communication Foundation (WCF)
  • functionality MSBuild for compiling

Applications that target the .NET Framework 4 Client Profile typically improve the deployment experience by having smaller download sizes and quicker install times. An application that targets the .NET Framework 4 Client Profile has a smaller redistribution package that installs the minimum set of client assemblies on the user's computer, without requiring the full version of the .NET Framework 4 to be present.

Am
+1  A: 

There is very little point in targeting the client profile for .NET 4.0. The download is 41MB, the full version is 48MB, only 15% bigger.

The client profile does make a lot of sense if you target 3.5, the full install is ~350 MB. The huge difference is explained by the prerequisites, .NET 4.0 requires at least XP SP3 or Vista SP1, 3.5 installs on any version of Windows > 2000. The 3.5 installer thus contains lots of the required updates for unmanaged Windows components used by .NET. The web installer lessens that blow considerably btw.

Hans Passant