Інші відповіді - чудові, і спам має багато спільного з цим.
Але насправді є простіша, загальніша відповідь: особливості. Надсилання електронної пошти через SMTP - це насправді дуже складна справа. Навіть без спаму, ви не хочете реалізувати весь набір функцій протоколу SMTP у кожному клієнті електронної пошти; вам краще за допомогою спеціалізованого програмного забезпечення (sendmail, postfix тощо) - великі в світі * nix, Exchange в світі Windows).
Наприклад, навіть на самому базовому, "справжній" SMTP-сервер повинен хоча б мати можливість вирішувати записи MX. Тоді він повинен узгодити функції (в основному TLS, але є й інші функції). Він має керувати чергами для повторних спроб, генерувати звіти про не доставку тощо.
І це лише основна, обов'язкова функціональність, без якої сервер навіть не працював. Він навіть не включає такі речі, як переписування адрес, розсилка повідомлень. Не кажучи вже про десяток або близько інших протоколів, які підтримують sendmail та ін., Наприклад UUCP.
Реалізація SMTP в Outlook, Thunderbird тощо дуже мінімальна - у кращому випадку приблизно еквівалент використання розумного хоста на sendmail, якщо це так.
Пов’язана, але окрема проблема: електронна пошта є дуже чутливою до безпеки темою, і ви хочете мати один або дуже небагато серверів з централізованим управлінням, а не потенційно сотні чи тисячі окремих на кожному робочому столі.