Just like Python then. And we all know python is cool - unlike mono![]()
well, not quite ... the statement that c# is interpreted is obviously bullshit. It's compiled into an intermediate language and then JIT-ed during runtime (like Java)1st part: no disagreeing there. 2nd part: all a matter of propaganda imo.
Python opened my eyes how nice programming languages could be (before had worked with Java mostly). I esp like not having to use curly brackets as they are shitty to reach on german keyboards. On the other hand I missed statically typed interfaces (I generally prefer to know what data type I should pass to a function).
C# is awesome because you can work really fast with it (like Python). Statically typed, but you can use type inference for local variables (so no more CrazyLongClassName xyz = new CrazyLongClassName()), the .Net framework is obviously amazing at doing the common tasks for you, and I think at least 80% of my new code is LINQ (arguably the app I work on does mostly transforms on stuff it gets from DB -> perfect for the job) which makes it easily readable (nested foreachs are so fugly).
But imo the strongest point for C# (from a programmers perspective, as I said I don't give a fuck about ideology) is that is has a damn good development environment (visual studio) with tools integration (eg. nuget to say the least). I mean I know that every language has some kind of package download tool (or even multiple which is imo even worse than having none at all) but none is as easy to use as just right-clicking on a solution and saying "manage dependencies" and you have all your current dependencies and the whole package repository in a nice UI. Normally you have to go to a command-line and do "easy-install xyz" or something which imo sucks bad from user experience PoV (and yes, the developer who wants to develop in your language _is_ your user!).