From Stackoverflow:
http://stackoverflow.com/questions/1430164/differences-between-emacs-and-vim
"With Emacs you are expected to have it open 24/7 and live inside the
program, almost everything you do can be done from there. You write your
own extensions, use it for note taking, organisation, games,
programming, shell access, file access, listening to music, web
browsing. It takes weeks and weeks till you will be happy with it and
then you will learn new stuff all the time. You will be annoyed when you
don't have access to it and constantly change your config. You won't be
able to use other peoples emacs versions easily and it won't just be
installed. It uses Lisp, which is great. You can make it into anything
you want it to be. (anything, at all)
With vim, it's almost always pre-installed. It's fast. You open up a
file do a quick edit and then quit. You can work with the basic setup if
you are on someone else's machine. It's not quite so editable; but it's
still far better than most text editors. It recognises that most of the
time you are reading/editing not typing and makes that portion faster.
You don't suffer from
emacs pinkie. It's not so infuriating. It's easier to learn."
In my opinion:
Vim mode switch is annoying and also slow. Although emacs need to type more keys for most of the
editing task, but since you don't need to switch between different mode, so it is still faster when you are familiar with it. Also as mentioned here, it is more extendable and can used everywhere (gdb, shell) etc.