I think if you are going to develop web applications you are better off with a dynamic language, recompiling large projects is a time killer and can get anoying. Another thing that is you might not like is that in general the opensource community for c# is not as big as other platforms have.
On the other hand the technologies are nice and fast, but for .NET it is all about tooling which can make you lazy and it can get in the way if you do not understand whats going on under the engine. You can pretty much forget about being productive without Visual Studio.
If you wanna geek around in a command-line interface, then .NET is not for you. If you want to do one part of your project the non-MS way, then .NET is probably not for you. I'm Microsoft partner and get all the software for a good price, but I'm not convinced that I would be more productive than with python and django.
You are right, but it doesn't feel the same as for example using freemarker instead of JSF or whatever. My point was more, if you start using some non-MS projects and you want to look up more information about how other people use it, that information might not be there or you will have a hard time finding it. If you are new to .net this can be a quite anoying. There are always exceptions for everything, but I wouldn't recommend someone new to .net diving straight into these alternative things.
On the other hand the technologies are nice and fast, but for .NET it is all about tooling which can make you lazy and it can get in the way if you do not understand whats going on under the engine. You can pretty much forget about being productive without Visual Studio.
If you wanna geek around in a command-line interface, then .NET is not for you. If you want to do one part of your project the non-MS way, then .NET is probably not for you. I'm Microsoft partner and get all the software for a good price, but I'm not convinced that I would be more productive than with python and django.