Microsoft has released .NET Core 3.0 for Windows, macOS, and Linux with a host of improvements, as well as Visual Studio 2019 16.3 and Visual Studio for Mac 8.3.
The company announced .NET Core 3.0 at its .NET Conf event for developers this week. It follows the .NET Core 3.0 preview released at Build 2019 in May, where Microsoft announced .NET 5 would be the next major release, however that's scheduled for November 2020 after a preview in the first half of 2020.
.NET Core 3.0 implements Windows Forms and Windows Presentation Foundation (WPF) for building apps. It now also supports Arm64 chips on Linux and Raspberry Pi to help deploy IoT projects. This release ships with C# 8 and F# 4.7.
SEE: How to build a successful developer career (free PDF)
Visual Studio 2019 16.3 and Visual Studio for Mac 8.3 need to be installed to use .NET Core 3.0 with Visual Studio.
Microsoft boasts that .NET Core 3 is "battle-tested" thanks to it being hosted on dot.net and bing.com for the past few months and soon other teams will start deploying large workloads on .NET Core 3.0 in production.
Windows Desktop apps are now supported with .NET Core for Windows Forms and WPF. While WPF is part of Visual Studio 2019 16.3 for Windows, the Windows Forms designer is still in preview and is available as a separate download. However, it will be added to Visual Studio in a future release.
Microsoft notes Windows Forms and WPF apps only work on Windows, even though .NET Core 3.0 is supported on multiple Linux distributions and macOS. The two technologies were part of Microsoft's answer to closing the divide between Win32 and Universal Windows Platform (AWP) apps.
With .NET Core 3 on Windows, the goal has been to make it easier for developers to migrate desktop applications from .NET Framework to .NET Core, according to Microsoft.
For IoT development, this release adds support for Linux Arm64 in addition to existing support for Arm32 for Linux and Windows .NET Core 2.1 and 2.2.
Microsoft has also now given developers the ability to use GPIO pins on devices like the Raspberry Pi for reading sensor data, interacting with radios, and writing text and images to displays.
Additionally, .NET Core apps now have executables while new JSON application programming interfaces (APIs) deliver faster performance and create less load on the garbage collector, which has been improved to use less memory by default to better support situations where many applications are hosted on the same server.
There are .NET Core updates for Docker too, which improve the behavior of .NET applications in containers.
Before .NET 5 arrives, Microsoft notes that .NET Core 3.0 will be superseded by .NET Core 3.1, which is slated for release in November 2019. As a long-term supported release, .NET Core 3.1 will be supported for at least three years.