>>1
I use it at work about 50% of the time. The rest I spend in Perl.
C# as a language isn't actually that bad. Its about on par with Java in terms of features and such. However, in order to use it you have to strap in with a copy of Visual Studio - the shortbus IDE. Some of the fun I have had with this POS application :
1. The first release of 2005 wants the BIN folder of all webservices under source control. Yes, thats right - you check DLLs into source control. About a year later, Microsoft finally got a service pack out there ... really caring about their customers there ...
2. Refactoring requires building. The IDE doesn't really know how to read the source code in any real degree - it builds the DLLs then relies on the PDB files to figure out where the binary comes from in your code. Lets just say this makes refactoring quite tedious.
3. No CVS support. You are stuck with VSS (kill me), or have to pony up for the ungodly expensive Team Edition Server. The only other options are a handful of partially functional third party plugins, and separate source control plugins.
4. Resource hog. It easily eats up twice as much memory as Eclipse, even when I have multiple languages going. Eating up more memory than a Java app is darn difficult, but Visual Studio manages to do it.
5. Automatic project editing. If visual studio detects that you have a different version of a DLL on your box, it will automatically check out the project and change the reference to that DLL. This might be acceptable if you are working alone, but when you have a large team with each member working on many projects, it basically means you have the IDE always checking crap in and out.
Theres more, but lets just say that the development environment sucks and leave it at that.