non conosco phpmailer, ma la differenza è, da quello che dici te, che se usa il comando MAIL per inviare la mail, l'invio utilizza le regole specificate nel php.ini. Se usa SMTP, puoi specificare direttamente il provider smtp da utilizzare, quindi qualcosa di differente da quanto impostato nel php.ini. Vantaggi/Svantaggi nulli tra i due metodi, a meno di specifiche particolare nell'app web (esempio, ogni utente che invia la mail può usare smtp diversi, un pò come fa un client di posta sul pc)