What are the acutal reasons to work dotnet core on cross platforms?
It does this by having slightly different code in the .Net Core Framework and Runtime for different platforms..NET compiles down to IL (Intermediate language) which is a pseudocode. It is then JIT (just in time) compiled to platform specific code. As long as you have a JIT compiler that can compile to a platform, you can push to that platform. For Linux it was originally called Mono. Microsoft eventually bought the project out, which was actually a good thing, as we ended up with platform parity.