Les autres réponses sont toutes excellentes et le spam y est pour beaucoup.
Mais il existe en réalité une réponse plus simple, plus générique: les fonctionnalités. L'envoi de courrier électronique via SMTP est en réalité une entreprise très complexe. Même sans spam, vous ne voudriez pas implémenter l’ensemble des fonctionnalités du protocole SMTP dans chaque client de messagerie; vous avez intérêt à utiliser un logiciel dédié (sendmail, postfix, etc., sont les plus gros logiciels dans le monde * nix, Exchange dans le monde Windows).
Par exemple, même au plus basique, un "vrai" serveur SMTP doit au moins être capable de résoudre les enregistrements MX. Ensuite, il doit négocier les fonctionnalités (principalement TLS, mais il existe aussi d'autres fonctionnalités). Il doit gérer les files d'attente de tentatives, générer des rapports de non-remise, etc.
Et ce n’est là que la fonctionnalité de base, indispensable, sans laquelle le serveur ne fonctionnerait même pas. Cela n'inclut même pas des choses telles que la réécriture d'adresses, les mailertables. Sans oublier la douzaine d'autres protocoles pris en charge par sendmail et al, tels que UUCP.
L'implémentation SMTP dans Outlook, Thunderbird, etc. est très minime - au mieux, équivaut à peu près à utiliser un hôte actif sur sendmail, le cas échéant.
Problème connexe, mais distinct: le courrier électronique est un sujet très sensible à la sécurité et vous souhaitez qu’un ou plusieurs serveurs gérés centralement le gèrent, au lieu de centaines, voire de milliers, de serveurs individuels sur chaque poste de travail.