Question .NET Framework version

ALX

Well-known member
Joined
Nov 16, 2005
Messages
253
Location
Columbia, SC
Programming Experience
10+
If you were to deploy a desktop app and wanted to reach the largest share of users in the general population, what Framework version would you target. My thinking is I should use 4.0 so I can include those users who are still on XP. I'm assuming (and welcome being corrected) that 4.0 would also be viable in the newest Windows operating systems. Aren't all of the newest Framework versions backwards compatible with 4.0 ?
 
Lifecycle FAQ—.NET Framework
Beginning with version 4.5.2 and later, .NET Framework is defined as a component of the Windows operating system (OS). Components receive the same support as their parent products, therefore, .NET Framework 4.5.2 and later follows the lifecycle policy of the underlying Windows OS on which it is installed.

Support for .NET Framework 4, 4.5, and 4.5.1 ended on January 12, 2016.
 
Even with the lack of support from Microsoft, we still need to make a decision on the Framework version on which to base our code when it is deployed... Yes ? Do we not cut off a percentage of potential users if we use the most recent Framework versions.
 
Windows XP itself is not supported by Microsoft so, if you are going to choose to support users on XP, targeting an unsupported version of .NET doesn't seem like a big deal. Just be aware that those users might want to blame you if something happens to their system or data through a .NET vulnerability that is surfaced through your app. Just be prepared to push it back on them for using an unsupported OS and thus requiring you to target an unsupported Framework version.

It's also unfair to expect those user's of yours who have done the right thing and upgraded to a supported OS to install an unsupported .NET framework because some of your users insist on sticking with XP. I would suggest that you build two versions with one targeting the latest .NET version and the other targeting .NET 4.0 for XP users specifically. You don't have to change the code at all; just build twice.
 
Back
Top