.NET is a general purpose development platform. It can be used for any kind of app type or workload where general purpose solutions are used. It has several key features that are attractive to many developers, including automatic memory management and modern programming languages, that make it easier to efficiently build high-quality apps. Multiple implementations of .NET are available, based on open .NET Standards that specify the fundamentals of the platform.
This section of the MSDN Library contains documentation for the .NET Framework, which is one of the existing .NET implementations. This topic will also talk about other .NET technologies and where you can find their related documentation.
We update the latest versions of the .NET Framework documentation on a regular basis with content fixes and enhancements, but we do not maintain older versions. For this reason, we recommend that you use the following link even if you're using an older version of the .NET Framework:
Earlier versions of the .NET Framework documentation are available from the table of contents pane on the left.
You can use the .NET Framework to develop apps for the desktop, web, and mobile devices, including Windows Store and Windows Phone Store apps:
To read about creating Windows 8.x Store apps in Windows 8, Windows 8.1, Windows 10 or Windows Phone apps, see the Windows Dev Center.
To read about creating Web sites and Web applications using ASP.NET, see the ASP.NET site.
For information about creating portable .NET Framework assemblies that work without modification on Windows, Windows Phone, and other platforms, see Cross-Platform Development with the .NET Framework.
You can use Visual Studio for your development tasks and select from a wide range of programming languages.
The .NET Framework also releases out-of-band packages with new functionality and improved cross-platform support. For information about these, see The .NET Framework and Out-of-Band Releases.
You can extend the capabilities of your apps with the following .NET Framework technologies:
A technology that enables you to create services that use the Open Data Protocol (OData), which exposes and consumes data over the web or intranet by using the semantics of representational state transfer (REST).
A technology that supports the development of data-oriented software applications on a variety of platforms. The Entity Framework enables developers to work with data in the form of domain-specific objects and properties, without having to concern themselves with the underlying database tables and columns where this data is stored. With the Entity Framework, developers can work at a higher level of abstraction when they deal with data, and can create and maintain data-oriented applications with less code than in traditional applications. Earlier versions of the Entity Framework documentation are available from the table of contents pane on the left.
A development platform that helps you create interactive Microsoft Surface apps by using the .NET Framework. This technology supports high-end graphics and multiuser interaction through natural gestures, touch, and physical objects.
A set of .NET Framework classes that help you build claims-aware, relying party applications and security token services. In the .NET Framework 3.5 SP1 and the .NET Framework 4, the WIF runtime was downloaded separately (see associated documentation). Beginning with the .NET Framework 4.5, WIF is fully integrated into the .NET Framework, and WIF content is available in the .NET Framework documentation set.
A set of integrated technologies that make it easier to build, scale, and manage web and composite apps that run on Internet Information Services (IIS).
.NET Core is a set of runtime, library and compiler components that allow you to create apps that run on Windows, Mac OS X and Linux. It can be installed locally with your app with only the packages you need. It provides a lightweight development model and the flexibility to work with your favorite development tools on your favorite development platform. If you're new to .NET Core, visit the Getting Started page to find installation instructions for each supported platform. You'll also find on that site, all the supporting documentation and API reference for .NET Core.
You can currently use .NET Core to develop console or Web applications: