Short bio: Computer Scientist, FOSS supporter (read more)
Tux Machines (TM)-specific
As it seems like everyone has to voice her opinion on Mono, I'll do as well.
First of all, I don't like C# as a programming language. And I think that Anders Hejlsberg is wrong on many things. Not having checked exceptions is ludicrous, recommending to use return codes rather than exceptions because of performance is stupid, and cramming every possible OOP and functional language feature into C# is pointless.
I much prefer Java because of its relative simplicity, I rather like its verboseness (Eclipse and NetBeans are there to help with that) and conventions, even though I wouldn't mind closures and some syntactic sugar for lists and maps. I'm a firm believer in semi-statically typed languages with an IDE and a compiler that can throw many programming mistakes at your face, at least for medium to large sized projects.
I also like using Python.