Все остальные ответы превосходны, и спам имеет к этому непосредственное отношение.
Но на самом деле есть более простой, более общий ответ: особенности. Отправка электронной почты через SMTP на самом деле очень сложная задача. Даже без спама вы не захотите реализовывать весь набор функций протокола SMTP в каждом почтовом клиенте; вам лучше с выделенным программным обеспечением (sendmail, postfix и т. д. самые большие в мире * nix, Exchange в мире Windows).
Например, даже на самом базовом уровне "настоящий" SMTP-сервер должен как минимум иметь возможность разрешать записи MX. Затем он должен согласовать функции (в основном TLS, но есть и другие функции). Он должен управлять очередями для повторных попыток, генерировать отчеты о недоставке и т.д.
И это только базовая, обязательная функциональность, без которой сервер даже не работал бы. Он даже не включает такие вещи, как перезапись адресов, почтовые программы. Не говоря уже о дюжине других протоколов, которые поддерживают sendmail и др., Таких как UUCP.
Реализация SMTP в Outlook, Thunderbird и т.д. Очень минимальна - в лучшем случае примерно эквивалентна использованию умного хоста на sendmail, если таковой.
Связанная, но отдельная проблема: электронная почта - это тема, очень чувствительная к безопасности, и вы бы хотели, чтобы ее обрабатывал один или несколько серверов с централизованным управлением, а не сотни или тысячи отдельных серверов на каждом рабочем столе.