.NET › .NET vs .NET Framework
How does the CLR implementation differ between .NET Framework and modern .NET (CoreCLR)?
AdvancedAnswer
While both are called 'the CLR', modern .NET uses CoreCLR, a reimplementation optimized for cross-platform execution, modularity, and performance, distinct from .NET Framework's original CLR. CoreCLR includes a modern JIT (RyuJIT) shared conceptually across platforms, supports side-by-side versioning (multiple .NET versions installed simultaneously without conflict, unlike Framework's single machine-wide installation), and has been the target of most of Microsoft's recent runtime performance investment including tiered compilation and dynamic PGO.
// Side-by-side install: multiple CoreCLR versions coexist
dotnet --list-runtimes
// Microsoft.NETCore.App 6.0.25
// Microsoft.NETCore.App 8.0.1
// (Framework CLR: only one version active machine-wide)Real-world example A shared build server runs applications targeting both .NET 6 and .NET 8 side by side without conflict, something that would have required careful version management or separate machines under the single machine-wide .NET Framework CLR model.