.NET Framework version history

Microsoft started development on the .NET Framework in the late 1990s originally under the name of Next Generation Windows Services (NGWS). By late 2000 the first beta versions of .NET 1.0 were released.

Version 3.0 of the .NET Framework is included with Windows Server 2008 and Windows Vista. Version 3.5 is included with Windows 7, and can also be installed on Windows XP and the Windows Server 2003 family of operating systems. On 12 April 2010, .NET Framework 4 was released alongside Visual Studio 2010.

The .NET Framework family also includes two versions for mobile or Embedded device use. A reduced version of the framework, the .NET Compact Framework, is available on Windows CE platforms, including Windows Mobile devices such as smartphones. Additionally, the .NET Micro Framework is targeted at severely resource-constrained devices.

Overview
A more complete listing of the releases of the .NET Framework may be found on the List of .NET Framework versions.

.NET Framework 1.0
This is the first release of the .NET Framework, released on 13 February 2002 and available for Windows 98, ME, NT 4.0, 2000, and XP. Mainstream support by Microsoft for this version ended 10 July 2007, and extended support ended 14 July 2009, with the exception of XP Media Center and Tablet PC editions.

.NET Framework 1.1
This is the first major .NET Framework upgrade. It is available on its own as a redistributable package or in a software development kit, and was published on 3 April 2003. It is also part of the second release of Microsoft Visual Studio .NET (released as Visual Studio .NET 2003). This is the first version of the .NET Framework to be included as part of the Windows operating system, shipping with Windows Server 2003. Mainstream support for .NET Framework 1.1 ended on 14 October 2008, and extended support ended on 8 October 2013. Since .NET 1.1 is a component of Windows Server 2003, extended support for .NET 1.1 on Server 2003 will run out with that of the OS – currently 14 July 2015. .NET 1.1 is the last available version for Windows NT 4.0.

If .NET Framework 1.0 is removed, installing only .NET Framework 1.1 also provides the system support for version 1.0, except in rare instances where an application will not run because it checks the version number of a library.

Changes in 1.1 in comparison with 1.0

 * Built-in support for mobile ASP.NET controls. Previously available as an add-on for .NET Framework, now part of the framework.
 * Security changes – enable Windows Forms assemblies to execute in a semi-trusted manner from the Internet, and enable Code Access Security in ASP.NET applications.
 * Built-in support for ODBC and databases. Previously available as an add-on for .NET Framework 1.0, now part of the framework.
 * .NET Compact Framework – a version of the .NET Framework for small devices.
 * Internet Protocol version 6 (IPv6) support.
 * Numerous API changes.

.NET Framework 2.0
Released with Visual Studio 2005, Microsoft SQL Server 2005, and BizTalk 2006.
 * The 2.0 Redistributable Package can be downloaded for free from Microsoft, and was published on 22 January 2006.
 * The 2.0 Software Development Kit (SDK) can be downloaded for free from Microsoft.
 * It is included as part of Visual Studio 2005 and Microsoft SQL Server 2005.
 * Version 2.0 without any Service Pack is the last version with support for Windows 98 and Windows Me. Version 2.0 with Service Pack 2 is the last version with official support for Windows 2000 although there have been some unofficial workarounds published online to use a subset of the functionality from Version 3.5 in Windows 2000. Version 2.0 with Service Pack 2 requires Windows 2000 with SP4 plus KB835732 or KB891861 update, Windows XP with SP2 or later and Windows Installer 3.1 (KB893803-v2)
 * It shipped with Windows Server 2003 R2 (not installed by default).

Changes in 2.0 in comparison with 1.1

 * Generics
 * Language support for generics built directly into the .NET CLR.
 * Full computing support for both the x64 and the IA-64 hardware platforms.
 * Numerous API changes.
 * Microsoft SQL Server integration – .NET 2.0, VS 2005, and SQL Server 2005 are all tied together. This means that instead of using T-SQL, one can build stored procedures and triggers in any of the .NET-compatible languages.
 * A new hosting API for native applications wishing to host an instance of the .NET runtime. The new API gives a fine grain control on the behavior of the runtime with regards to multithreading, memory allocation, assembly loading and more (detailed reference). It was initially developed to efficiently host the runtime in Microsoft SQL Server, which implements its own scheduler and memory manager.
 * Many additional and improved ASP.NET web controls.
 * New data controls with declarative data binding.
 * New personalization features for ASP.NET, such as support for themes, skins, master pages and webparts.
 * .NET Micro Framework – a version of the .NET Framework related to the Smart Personal Objects Technology initiative.
 * Membership provider
 * Partial classes
 * Nullable types
 * Anonymous methods
 * Iterators
 * Data tables
 * Introduces Common Language Runtime 2.0

.NET Framework 3.0
.NET Framework 3.0, formerly called WinFX, was released on 21 November 2006. It includes a new set of managed code APIs that are an integral part of Windows Vista and Windows Server 2008 operating systems. It is also available for Windows XP SP2 and Windows Server 2003 as a download. There are no major architectural changes included with this release; .NET Framework 3.0 uses the same Common Language Runtime (CLR) as .NET Framework 2.0. Unlike the previous major .NET releases there was no .NET Compact Framework release made as a counterpart of this version. Version 3.0 of the .NET Framework shipped with Windows Vista. It also shipped with Windows Server 2008 as an optional component (disabled by default).

.NET Framework 3.0 consists of four major new components:
 * Windows Presentation Foundation (WPF), formerly code-named Avalon; a new user interface subsystem and API based on XML and vector graphics, which uses 3D computer graphics hardware and Direct3D technologies. See WPF SDK for developer articles and documentation on WPF.
 * Windows Communication Foundation (WCF), formerly code-named Indigo; a service-oriented messaging system which allows programs to interoperate locally or remotely similar to web services.
 * Windows Workflow Foundation (WF) allows for building of task automation and integrated transactions using workflows.
 * Windows CardSpace, formerly code-named InfoCard; a software component which securely stores a person's digital identities and provides a unified interface for choosing the identity for a particular transaction, such as logging in to a website.

.NET Framework 3.5
Version 3.5 of the .NET Framework was released on 19 November 2007, but it is not included with Windows Server 2008. As with .NET Framework 3.0, version 3.5 uses Common Language Runtime (CLR) 2.0, that is, the same version as .NET Framework version 2.0. In addition, .NET Framework 3.5 also installs .NET Framework 2.0 SP1 and 3.0 SP1 (with the later 3.5 SP1 instead installing 2.0 SP2 and 3.0 SP2), which adds some methods and properties to the BCL classes in version 2.0 which are required for version 3.5 features such as Language Integrated Query (LINQ). These changes do not affect applications written for version 2.0, however.

As with previous versions, a new .NET Compact Framework 3.5 was released in tandem with this update in order to provide support for additional features on Windows Mobile and Windows Embedded CE devices.

The source code of the Base Class Library in this version has been partially released (for debugging reference only) under the Microsoft Reference Source License.

Service Pack 1
The .NET Framework 3.5 Service Pack 1 was released on 11 August 2008. This release adds new functionality and provides performance improvements under certain conditions, especially with WPF where 20–45% improvements are expected. Two new data service components have been added, the ADO.NET Entity Framework and ADO.NET Data Services. Two new assemblies for web development, System.Web.Abstraction and System.Web.Routing, have been added; these are used in the ASP.NET MVC Framework and, reportedly, will be used in the future release of ASP.NET Forms applications. Service Pack 1 is included with SQL Server 2008 and Visual Studio 2008 Service Pack 1. It also featured a new set of controls called "Visual Basic Power Packs" which brought back Visual Basic controls such as "Line" and "Shape". Version 3.5 SP1 of the .NET Framework shipped with Windows 7. It also shipped with Windows Server 2008 R2 as an optional component (disabled by default).

.NET Framework 3.5 SP1 Client Profile
For the .NET Framework 3.5 SP1 there is also a new variant of the .NET Framework, called the ".NET Framework Client Profile", which at 28 MB is significantly smaller than the full framework and only installs components that are the most relevant to desktop applications. However, the Client Profile amounts to this size only if using the online installer on Windows XP SP2 when no other .NET Frameworks are installed or using Windows Update. When using the off-line installer or any other OS, the download size is still 250 MB.

.NET Framework 4
Key focuses for this release are:
 * Parallel Extensions to improve support for parallel computing, which target multi-core or distributed systems. To this end, technologies like PLINQ (Parallel LINQ), a parallel implementation of the LINQ engine, and Task Parallel Library, which exposes parallel constructs via method calls., are included.
 * New Visual Basic .NET and C# language features, such as implicit line continuations, dynamic dispatch, named parameters, and optional parameters.
 * Support for Code Contracts.
 * Inclusion of new types to work with arbitrary-precision arithmetic (System.Numerics.BigInteger) and complex numbers (System.Numerics.Complex).
 * Introduce Common Language Runtime (CLR) 4.0.

History
Microsoft announced the intention to ship .NET Framework 4 on 29 September 2008. The Public Beta was released on 20 May 2009.

On 28 July 2009, a second release of the .NET Framework 4 beta was made available with experimental software transactional memory support. This functionality is not available in the final version of the framework.

On 19 October 2009, Microsoft released Beta 2 of the .NET Framework 4. At the same time, Microsoft announced the expected launch date for .NET Framework 4 as the 22 March 2010. This launch date was subsequently delayed to 12 April 2010.

On 10 February 2010, a release candidate was published: Version:RC.

On 12 April 2010, the final version of .NET Framework 4.0 was launched alongside the final release of Microsoft Visual Studio 2010.

On 18 April 2011, version 4.0.1 was released supporting some customer-demanded fixes for Windows Workflow Foundation. Its design-time component, which requires Visual Studio 2010 SP1, adds a workflow state machine designer.

On 19 October 2011, version 4.0.2 was released supporting some new features of Microsoft SQL Server.

Windows Server AppFabric
After the release of the .NET Framework 4, Microsoft released a set of enhancements, named Windows Server AppFabric, for application server capabilities in the form of AppFabric Hosting and in-memory distributed caching support.

.NET Framework 4.5
.NET Framework 4.5 was released on 15 August 2012; a set of new or improved features were added into this version. The .NET Framework 4.5 is only supported on Windows Vista or later. The .NET Framework 4.5 uses Common Language Runtime 4.0, with some additional runtime features.

.NET for Metro style apps
Metro-style apps are designed for specific form factors and leverage the power of the Windows operating system. A subset of the .NET Framework is available for building Metro style apps for Windows 8 using C# or Visual Basic. This subset is called .NET APIs for apps.

The version of .NET Framework, runtime and libraries, used for Metro style apps is a part of the new Windows Runtime, which is the new platform and application model for Metro style apps. It is an ecosystem that houses many platforms and languages, including .NET Framework, C++ and HTML5/JavaScript.

Core Features

 * Ability to limit how long the regular expression engine will attempt to resolve a regular expression before it times out.
 * Ability to define the culture for an application domain.
 * Console support for Unicode (UTF-16) encoding.
 * Support for versioning of cultural string ordering and comparison data.
 * Better performance when retrieving resources.
 * Zip compression improvements to reduce the size of a compressed file.
 * Ability to customize a reflection context to override default reflection behavior through the CustomReflectionContext class.

Asynchronous operations
In the .NET Framework 4.5, new asynchronous features were added to the C# and Visual Basic languages. These features add a task-based model for performing asynchronous operations.

ASP.NET

 * Support for new HTML5 form types.
 * Support for model binders in Web Forms. These let you bind data controls directly to data-access methods, and automatically convert user input to and from .NET Framework data types.
 * Support for unobtrusive JavaScript in client-side validation scripts.
 * Improved handling of client script through bundling and minification for improved page performance.
 * Integrated encoding routines from the AntiXSS library (previously an external library) to protect from cross-site scripting attacks.
 * Support for WebSocket protocol.
 * Support for reading and writing HTTP requests and responses asynchronously.
 * Support for asynchronous modules and handlers.
 * Support for content distribution network (CDN) fallback in the ScriptManager control.

Networking

 * 1) Provides a new programming interface for HTTP applications: System.Net.Http namespace and System.Net.Http.Headers namespaces are added
 * 2) Improved internationalization and IPv6 support
 * 3) RFC-compliant URI support
 * 4) Support for internationalized domain name (IDN) parsing
 * 5) Support for Email Address Internationalization (EAI)

.NET Framework 4.5.1
The release of .NET Framework 4.5.1 was announced on 17 October 2013 along Visual Studio 2013. This version requires Windows Vista SP2 and later and is included with Windows 8.1 and Windows Server 2012 R2.