The .NET framework is evolving at a rapid pace. It is becoming increasingly difficult to keep track of what features were released in each version of the framework.
When developing a new application you are often faced with the decision of which Framework you are going to target. Here are some examples:
• When deploying a Sharepoint solution then you will need to develop code that is compatible with the framework installed on your application servers.
• If you are a component developer than you may choose to target a earlier version of the Framework such as 2.0 because you can almost guarantee that all of your potential customers will have at least a minimum of 2.0 installed.
• Developers at a big corporation may be forced to choose a .NET framework version that has been officially blessed by thier IT department.
This article attempts to describe what is contained in each release of the Framework. Hopefully, it will make your decision of choosing the right framework for your project a little bit easier and luckily for us Visual Studio 2008 finally gives us the ability to multi-target.
.NET 1.0 - Released 2/13/2002 The first release of the .NET framework
.NET 1.1 - Released 4/24/2004 The first major upgrade to the .NET framework. It was available as a redistributable but it was also bundled with Visual Studio 2003.
- Mobile ASP.NET controls
- Built-in support for ODBC and Oracle databases.
- IPv6 support.
.NET 2.0 - Released 11/07/2005 Major enhancements in this release.
- Many new ASP.Net controls and also support for themes, skins and webparts. The master page concept was also introduced.
- Partial Classes
- Anonymous methods
- ADO.NET
.NET 3.0 - Released 11/06/2006 Introduction of WPF, WCF, WF and CardSpace. These are important technologies that are used in products like Silverlight, Sharepoint and Biztalk. This release also includes a new set of APIs that are integrated with Windows Vista and Windows Server 2008. It is also available for XP SP2 and Windows Server 2003 as a separate download.
- WPF - vector based graphics
- WCF - replacement for .NET remoting. A service-oriented messaging system which allows programs to interoprate locally or remotely. Very similar to web services.
- WF - Workflow tool which can be seen in products like Biztalk and Sharepoint.
- Windows CardSpace - Digital identity interface.
.NET 3.5 - Released 11/19/2007 The introduction of LINQ
- LINQ to Objects, LINQ to XML and LINQ to SQL
- Expression Trees and Lamda Methods
- Extension Methods
- Paging Support for ADO.NET
- Managed Wrappers for WMI and AD
- Enhancements to WCF and WF
- Ajax included
- System.CodeDom namespace
3.5 Service Pack 1 - Released 8/11/2008 Impro
vements made to WPF. The release of ADO.NET Entity Framework and ADO.NET data services. Also the introduct of System.Web.Abstraction and System.Web.Routing which are used in the MVC Framework and future ASP.NET Forms applications.
.NET 4.0 - Not released yet Parallel computing will be the major focus of this release.
- PLINQ - a parallel implementation of the LINQ engine
- TPL - Task Parallel library which will allow for parallel method calls.
To summarize, the .NET framework is constantly evolving. Choosing a Framework for your solution may require some careful thought. However, if you work in an environment where you control the technology then why not use the latest and greatest release. Although you may not use all the features of that framework today there is a chance as your application evolves that you may need to leverage a technology like PLINQ.