If I'm an experienced Python developer who develops a lot of websites and APIs using Django or Flask and SQLAlchemy, is there any reason to try this stuff? C# is a great language, but what about the libraries? What replaces Flask? What replaces SQLAlchemy? How do I deploy? Looking for some practical reasons to invest time on this if Windows development is not in my roadmap.
For me, the GIL is a feature. Proper pthreading is for systems software as I see it. If you're rewriting Apache or IIS then you may need to bring in Rust, C(++).
I never found platforms like .Net and Java to be low level enough to write systems software, where you'd definitely want multithreading, and not high level enough to be as convenient as Python.
I write in Python and then use PyPy for more CPU intensive services. If I wanted multithreading and instances won't cut it, it would be a pretty hardcore usecase (for a lone wolf like me), I'd most likely also need no GC so I'd reach for something like Rust rather than C#.
I hate to say "no" to learning anything, but to be the devil's advocate this is how I've always seen it.
The performance of IronPython was horrible and Python being an ecosystem of libraries built in C and wrapped in a Python API, it makes alternatives to be unusable, since most Python libraries that matter are incompatible.
No. If you really want a high performance Windows friendly server software, try Java. But honestly I would not use .net for anything past excel plugins.