Latest in branch 4.7
4.7.2
Released 30 Apr 2018
(8 years ago)
Software.NET Framework
Version4.7
Status
Supported
Initial release4.7
05 Apr 2017
(9 years ago)
Latest release4.7.2
30 Apr 2018
(8 years ago)
End of lifeTBD
(Supported)
Release noteshttps://github.com/microsoft/dotnet/blob/main/releases/net472/dotnet472-changes.md
Documentationhttps://learn.microsoft.com/en-us/dotnet/framework/
Downloadhttps://dotnet.microsoft.com/en-us/download/dotnet-framework/net472
.NET Framework 4.7 ReleasesView full list

What Is New in .NET Framework 4.7

.NET Framework 4.7 introduces enhancements across the platform, focusing on high-DPI support, cryptography, and runtime performance. These updates are designed to improve application compatibility and security for modern Windows environments.

Category Key Changes
High DPI Improved high-DPI support for Windows Forms and Windows Presentation Foundation (WPF) applications.
Cryptography Enhanced cryptographic support with new algorithms and better Elliptic Curve Diffie-Hellman key derivation.
Runtime JIT compiler improvements for better performance and garbage collection enhancements.
Networking TLS 1.1/1.2 support enabled by default for HttpClient, WCF, and other networking stacks.
ASP.NET Updates to ASP.NET for improved object cache extensibility and data annotation localization.

How does .NET 4.7 improve High-DPI support?

The biggest win for desktop developers is the overhauled high-DPI experience. Windows Forms applications get per-monitor DPI awareness, which means your app's UI will scale correctly on setups with multiple monitors that have different scaling factors. This was a long-standing pain point for many business applications.

WPF also gets its share of improvements. The team fixed a number of issues with DPI scaling, making controls and text render more reliably. In practice, this means your existing WPF apps will just look better on high-resolution displays without requiring extensive code changes.

What cryptography updates should I know about?

.NET 4.7 strengthens its cryptographic capabilities significantly. It adds support for additional cryptographic algorithms, which is crucial for maintaining compliance with modern security standards. The Elliptic Curve Diffie-Hellman (ECDH) implementation is now more robust with improved key derivation methods.

This matters because it allows your applications to use stronger, more modern encryption techniques out-of-the-box. You can now leverage these enhanced crypto APIs for securing data transmission and storage without relying on external libraries.

Are there any runtime performance improvements?

Yes, the runtime gets some under-the-hood optimizations. The JIT compiler includes performance enhancements that can result in faster execution of your compiled code. While these improvements might not be dramatic for every application, they contribute to overall better performance.

The garbage collector also sees some tweaks, particularly for large heap allocations. This can help reduce pause times in memory-intensive applications, making your server applications more responsive under heavy load.

What networking security changes were made?

TLS 1.1 and TLS 1.2 are now enabled by default for common networking components like HttpClient, WCF, and HttpWebRequest. This is a significant security enhancement as it ensures secure communications use modern protocols by default rather than falling back to older, less secure options.

In practice, this means your applications automatically get better transport security without requiring code changes. However, you should test your connectivity to ensure any legacy servers you communicate with support these newer protocols.

Did ASP.NET get any updates?

ASP.NET applications benefit from improved object cache extensibility, giving you more control over how caching is implemented. The data annotation localization support has been enhanced, making it easier to build applications that need to support multiple languages and regions.

These might not be headline features, but they address specific pain points for web developers building enterprise applications. The improved cache extensibility is particularly useful for large-scale applications that need custom caching strategies.

FAQ

Do I need to modify my code to get the new high-DPI benefits?
For Windows Forms, you may need to enable per-monitor DPI awareness in your application manifest or programmatically. WPF improvements are largely automatic and will work with existing applications.

Will the TLS 1.1/1.2 default break connectivity to older servers?
It might. If your application communicates with servers that only support SSL 3.0 or TLS 1.0, you may encounter connection failures. You should test your connectivity and update server configurations where possible.

Are the cryptographic changes backward compatible?
Generally yes, but applications that rely on specific cryptographic behaviors might need testing. The new algorithms are additive and shouldn't break existing code that uses standard cryptographic patterns.

How significant are the performance improvements?
The JIT and GC improvements provide incremental gains rather than dramatic speed boosts. Most applications will see minor performance benefits without any code changes.

Is there anything deprecated in .NET 4.7 that I should worry about?
.NET 4.7 doesn't introduce major deprecations that would break most existing applications. It's primarily an additive release with enhancements and fixes.

Releases In Branch 4.7

VersionRelease date
4.7.230 Apr 2018
(8 years ago)
4.7.117 Oct 2017
(8 years ago)
4.705 Apr 2017
(9 years ago)