https://dotnet.microsoft.com/download
https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore2x
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-2.2
https://www.techempower.com/benchmarks/#section=data-r17
https://dotnet.microsoft.com/learn/dotnet/what-is-dotnet
http://home.etf.rs/~kraus/knjige/crz.html
https://docs.microsoft.com/en-us/dotnet/core/linux-prerequisites?tabs=netcore2x
https://docs.microsoft.com/en-us/aspnet/core/host-and-deploy/linux-nginx?view=aspnetcore-2.2
https://www.techempower.com/benchmarks/#section=data-r17
I would recommend .Net Core as well. It’s cross platform and runs well on all platforms (as all three of these are). However, .Net Core is more performant than Node and equally as performant as Go if not faster in real world scenarios (see: TechEmpower Framework Benchmarks).
The ecosystem for .Net is also great. Check out this list of OSS available for .Net Core: thangchung/awesome-dotnet-core
There are some other libraries as well that aren’t listed, but you can find them by searching GitHub. For example, some node/go(Iris)/javalin/vapor users claim .net core asp .net mvc takes too much to get a simple api up. This isn’t true. To use a full MVC framework like Laravel or CakePHP (PHP) or ASP .NET MVC it will take some more effort to get started. But with libraries like the asp .net core framework (non MVC) and Carter (CarterCommunity/Carter) you can wire up server side API as simply as you can with Node/Sails/Javalin/Iris (Go), etc.
http://home.etf.rs/~kraus/knjige/crz.html