This topic looks at .NET Core and .NET Framework, summarizes their similarities and the differences between them, and gives
some guidance on when you should use one over the other. The key points are summarized in the section
Comparison Overview, with more information provide in the sections that follow.
The information presented in this topic is intended to be a summary rather than fully comprehensive. For more information
on .NET Core compared to .NET Framework see
Microsoft: .NET Core - Comparison to other .NET Implementations.
Comparison Overview
The main points when comparing .NET Core and .NET Framework are as follows:
- .NET Core is cross-platform whereas .NET Framework is Windows-only.
- .NET Core does not include all the functionality that is available in .NET Framework, and
Visual COBOL does not currently support all the functionality for .NET Core that it supports for .NET Framework.
See
.NET Core Known Issues and Restrictions for information on functionality that is available in .NET Core but is not currently supported by
Visual COBOL.
- .NET Framework 4.8 was the final major release of .NET Framework, whereas new versions of .NET Core are still being released.
.NET Framework 4.8 is planned to be available for as long as Windows is available, but new features, performance improvements,
and IDE features will only be added to .NET Core.
This does not constitute a requirement for you to move from .NET Framework to .NET Core, but
Micro Focus anticipates that you will probably need to do so at some point as more and more systems move to .NET Core.
- If you are deploying a new application to .NET, you should use .NET Core.
Similarities
The following list summarizes key areas in which .NET Core and .NET Framework are similar:
- NET Core contains a large subset of the .NET Framework Base Class Library (albeit with a different factoring).
- .NET Core and .NET Framework have a shared API, .NET Standard, which is available on all .NET implementations.
- .NET Core and .NET Framework support Windows and Windows Server.
Differences
The following list summarizes significant areas in which .NET Core and .NET Framework are different:
.NET Core Advantages
Targeting .NET Core rather than .NET Framework offers the following advantages:
- .NET Core is seen as the future architecture of the .NET platform that will ultimately replace .NET Framework.
- .NET Core enables you to isolate your applications. Your applications can be completely self-contained, so don't rely on
files shared with other applications.
- Deploying an application to run on .NET Core can be as straightforward as copying the published files to the target machine.
- The fact that your .NET Core-based applications are isolated means that once they have been deployed you can make updates
to them without affecting the behavior of any other applications.
Choosing Between .NET Core and .NET Framework
Deciding whether your applications should target .NET Core or .NET Framework depends on which platform most closely meets
the requirements of your applications. The following lists outline when each platform might be most appropriate.
- Use .NET Core when:
- Deploying a new application, unless it relies on functionality only available in .NET Framework.
- Using microservices, because .NET Core allows a mix of technologies, is lightweight and can be minimized for each microservice.
- Performance and scalability are vital for you. In these cases, Microsoft recommends running .NET Core with ASP.NET Core.
- You need to run applications that require different versions of .NET side-by-side.
- Use .NET Framework when:
- You need to use functionality that is not available in .NET Core. For example:
- ASP.NET WebForms
- WCF services
- Any .NET Framework API that is not part of .NET Standard
- You need to use functionality that is available in .NET Core but is not currently supported by
Visual COBOL. For example, the following are not currently supported:
- Deploying to macOS.
- Deploying to a Linux/Windows container running in Docker.
See
.NET Core Known Issues and Restrictions for more information.
Note: The information in this topic is only a summary.
Micro Focus recommends that before making a decision about which platform to target, you check the Microsoft website for comprehensive
information about the different platforms that are available.