I work as a c# developer in a purely Microsoft shop.
I recently started teaching myself assembly using gas and Linux in my free time away from work. I like messing a
I work in a 90% Microsoft shop, but I still use gvim every day. I have a vi plugins for every IDE I work with. I'd recommend vim if you are going to learn one or the other, but I know emacs users will strongly disagree.
emacs and vi have been around for a long time, and are both very powerful. Learning one of these might open your eyes to a more efficient world of coding.
I also work for a Microsoft only shop, but, at home, I only use Linux. Suffice it to say that I use Vim exclusively for editing at home. At work, I use Visual Studio for all development, but I use Vim for many tasks that require complex text manipulation. Even if I didn't use Vim at home, it would still be incredibly useful to me for what I do at work. Our IT guy thinks I'm some sort of magician when he sees me doing my Vim acrobatics. That's got to be worth something, right? ;)
I was hardcore user of VIM and also developed intellisense for C# (http://insenvim.sourceforge.net/).. but with latest language changes i cannot avoid using Visual Studio. But many time look back using VIM is for simplicity reasons. Visual Studio takes lot of memory and start-up time is very huge. Even to read a file or do simple things it require quite a few minutes. But with it is so easy to open a file and navigate. I might port VIM intellisense to C# 3.0.
I've been a professional C/C++ programmer for 16 years. 5 years ago I picked up some Common Lisp, and ended up learning elisp/emacs too. I also dabble in Haskell. I've found these experiences massively helpful in programming C++. If nothing else you get to see the future, as the C++ slowly becomes more expressive by adopting things that CL has had for decades.
Learning emacs is a long slow process that starts to pay off once you're fully fluent in its features, way of doing things and elisp. I use Visual Studio for a lot of my development, but often I switch to emacs to take advantage of the quick to use key macros, or to do some complex processing on a table of values. Lot's of stuff that you can knock up really quickly in elisp that would take a few hours of hair tearing with Visual Studios plugins.
Begin the flame war :)
I'm a VIM addict and not ashamed to admit it. I find that using VIM makes me significantly more productive in my daily life. Coding is a lot faster when you don't have to take your hands off of the keyboard.
By default VS has poor support for VIM bindings. However, there is a cheap add-in available (ViEmu) that provides excellent VIM keybindings for Visual Studio. I have a personal license and I believe it was worth every penny.
That being said there is a steep learning curve associated with VIM. It will in all likelyhood kill your productivity for a week or two. After that though, the benefits will start coming and you should notice a boost in your productive powers.
IMHO, no. i am using acme over vim. gedit or vs2008 at work.