Modernizing .Net is a slow process.

Although it’s not been hard for Microsoft to deliver a new, faster cross-platform runtime in the open source .Net Core, it’s been harder to bring code and developers to the new platform.

With the .Net Framework now nearly two decades old, there’s a legacy of APIs and functions that need to be supported in any new version, if code is to carry on running.

Slight differences between API implementations can cause catastrophic bugs, or worse yet, can change outputs from version to version.

So although .Net Core is smaller and faster than the full .Net Framework, code written for one won’t run on the other because there’s no common SDK.

| Microsoft .Net Core 2.0: Everything you need to know.

The text above is a summary, you can read full article here.