I can't see the reason either. There's a lot of hate here for "enterprisy" languages like C#, but little to back it up.<p>Surely, "Hello world" style programs are simpler in Python. It's probably easier to maintain and refactor C# programs due to the better tool support. The list goes on like this, with pros and cons on either side, but all in all, the differences are actually rather small: both are imperative (with some functional sauce added later), but are object-oriented, both allow you to express a large amount of logic in relatively little space (compared to e.g. Java or C++), both have a large ecosystem and both come with batteries included.<p>The biggest difference, really, is culture. Python has a very nice community, but unfortunately a sizeable part of this community learned Python as their first non-crap language, and thus can't imagine anything better than Python. These are the people who keep raging that non-Python programmers aren't as smart, or good, somehow, as them. It's from these people that you get the vibe that C# is somehow inferior, but you can safely ignore them.<p>The C# community doesn't have many such people, but in exchange it has it's own flavour of idiot: a large share of mediocre programmers who can't actually really code well, but just get by because the IDE helps them so much. These people completely depend on libraries and tools made by Microsoft and a small amount of commercial suppliers, not looking to any of the great open source stuff out there. They weren't productive doing databases until Microsoft released Entity Framework. They weren't productive doing web apps until Microsoft released ASP.NET MVC. They can't fathom sharing their work, and they think certifications are more important than great software. In the companies they work, people like this easily make manager, which makes the problem worse.<p>Clearly, I'm generalizing strongly with respect to both communities. I'm mostly trying to make clear that even on the community level, the difference is very small. There's awesome folks, and there's mindless morons. The kinds of awesome that exists in both communities is pretty similar, the kinds of morons are slightly different.<p>You'll find that, as a C# programmer, Python is very easy to learn, should you wish to do this. There's no real technical need, because C# just about equally great (I think slightly greater, but that's for religious reasons such as typing, and this thread is full of smart people who disagree). If you want to work at a shop that happens to use Python, you'll live with it. Do spend some days getting into "Pythonic" thinking. Resist putting everything into a class. Bite the bullet of lacking editor support and more concise docs than you're used to. Look past the included batteries, there's often much better alternatives outside the standard library, much more than what you're used to in .NET.