DLL - Dynamic Lybrary Link
É um arquivo que contém funções que são usadas por programas para realizar tarefas. Normalmente, o código que está em uma DLL pode ser reaproveitado por outros programas ou por outras partes do código
de um mesmo programa.
API - Application Programming Interface (ou Interface de Programação de Aplicativos).
É um conjunto de classes e interfaces com funcionalidades padrões já implementadas e também um documento que serve para mostrar ao programador quais são os métodos e os parametros necessários para utilização
de uma determinada classe.
Assim você pode utilizar um método sem precisar saber como ele está implementado.
Mais detalhes em
http://pt.wikipedia.org/wiki/API
http://twitter.com/caiado