Yo uso la classe:
PHP Mailer:
http://phpmailer.sourceforge.net
Permite enviar e-mail via: mail() de PHP, SMTP (varios incluso a la vez por si falla uno en el envio ..), y directo al sendmail si lo usas ...
Eso como "transportadores" .. En cuanto a funciones:
Envia HTML/texto plano simultaneamente (multiparte), Atattachments sin problemas .. e incluso archivos incrustados en HTML (como imagenes) para que leas un e-mail "off line" ...
Un saludo,