smartparenspossui um superconjunto da funcionalidade fornecida por autopair. Além de fornecer inserção de pares (o que é o que autopairfaz), ele suporta manipular o que chama de "sexps híbridos" ou sexps nos modos não-ciesp. Ele fornece comandos para navegar, marcar, juntar, dividir, absorver e muito mais para sexps, entre outras coisas.
Eu pessoalmente uso smartparense descobri que ele fornece algumas funcionalidades sobrepostas
yasnippet - capacidade de acionar a inserção de pares usando uma string
change-inner - selecionar expressão dentro do par correspondente
- e
pareditclaro