3.1 in December 2019 is the long-term support release, and .NET 5 in November 2020 drops the “Core” without being a different platform.
$ dotnet --list-sdks
3.1.404 [/usr/share/dotnet/sdk]
# the naming, which is the confusing part:
# .NET Framework 4.8 Windows only. maintenance only.
# .NET Core 3.1 cross-platform. LTS to Dec 2022.
# .NET 5 .NET Core 4 with a marketing name.
# .NET 6 the next LTS. November 2021.
Skipping 5 and waiting for 6 is the defensible position for anything that has to stay supported, because 5 is a current release with fifteen months of support. The rename exists to stop people asking which .NET they should use, which was a genuine problem — and it briefly makes the answer harder for anyone reading documentation written across the boundary. For a PHP developer looking in occasionally, 3.1 is the version worth knowing.