O primeiro a se entender é que existem modos de trabalho no VIM, dentre eles os mais importantes são os modos: Normal, Visual e Inserção.
Geralmente um arquivo é aberto em modo Normal. Nele te é permitido, entre outros recursos: navegar pelo texto, substituir palavras/linhas/colunas, pesquisar e saltar entre linhas/parágrafos/blocos. Abaixo alguns comandos úteis desse modo:
h, j, k, l - navega nas direções esquerda, abaixo, acima, direita respectivamente;
gg - vai para a primeira linha;
b - vai para o início da palavra (begin);
e - vai para o final da palavra (end);
E - vai para o final da palavra (somente ao encontrar um espaço em branco);
G - vai para a última linha;
yy - copia a linha atual para o buffer;
dd - deleta a linha atual e a coloca em buffer;
pp - cola na linha atual o que estiver em buffer;
r - substitui o carectere sob o cursor pelo próximo a ser digitado;
x - deleta o caractere sob o cursor;
u - desfaz a última ação;
/ - busca rápida (case-sensitive);
<Ctrl> + a com o cursor em um número - adiciona um;
<Ctrl> + x com o cursor em um número - subtrai um;
: - inicia subshell para comandos internos do VIM;
:split ou :vsplit /caminho/do/arquivo - abre outro arquivo dividindo a tela horizontal ou verticalmente, respectivamente;
<Ctrl> + ww - alterna entre os arquivos abertos;
:wq - salva o arquivo atual e sai do editor;
:q! - sai sem salvar alterações;
:s/padrão/string/flags - substitui o padrão pela string especificada, o comando se comporta de acordo com as flags definidas. Mais informações - :help substitute;
Em modo Visual pode-se selecionar partes do texto utilizando as teclas e atalhos de navegação mostrados anteriormente para aplicar ações sobre o texto selecionado usando os mesmos atalhos mostrados antes. Pode-se entrar no modo Visual com a tecla v; ou V para o modo Visual/Linha (permite selecionar linhas inteiras); ou ainda, < Ctrl > + v para Visual/Bloco (para selecionar blocos de textos baseados em colunas).
Para entrar no modo Inserção (para incluir textos manualmente) pode-se usar os atalhos:
i : entra no modo na posição atual;
I : entra no modo no início da linha;
a : entra no modo na posição seguinte;
A : entra no final da linha;
o : entra na linha seguinte (adiciona uma nova linha);
O : entra na linha anterior (adiciona uma nova linha);
Estando em qualquer modo, a tecla ESC te retorna ao modo NORMAL.
É possível combinar comandos e usar quantificadores. Exemplos:
3w - posiciona o cursor na terceira palavra (word) adiante;
y4y - copiar para o buffer as quatro linhas contando com a atual;
cE - deleta da posição atual até o próximo espaço em branco e entra em modo de INSERÇÃO;
Esses são alguns exemplos básicos. O editor possui muitos comandos de forma a ser bastante útil tanto para escritores quanto para desenvolvedores e administradores de sistemas. Abaixo algumas recomendações para aprofundamento e consulta:
Tutorial de sobrevivência no VIM
VIM - mais que um editor