C# is a nice language to write, in my opinion. The .NET Framework is comprehensive but that means it's not small. .NET Core is a more focused version of the .NET Framework. It's not the "next" .NET version but a complimentary framework. Having used Node.JS almost exclusively for the last couple of years the approach taken by .NET core seems more intuitive. There are a couple of config files and then the Kestrel web server does what the Node.JS http module does. Additional modules are then added using NuGet just like you would with NPM. The other big advantage of .NET core is that there is a Microsoft version which runs on Linux. On a side note, this prompted me to try Mono again and it seems to be much easier to get up and running than last time I checked and I haven't found any reports of it working significantly worse than the MS .NET Framework.