Normally in a email client you need to configure an SMTP server to use to send mails. When you send a mail, your configured SMTP server simply resolve the domain after the @at in the email address of the recipient with a DNS request of type MX. The DNS will answer with the address of the mail exchanger SMTP server of the recipient's mail provider, and your SMTP server will forward your mail to it.
My question is: why this is not done directly by the mail client? It is nothing special: it is just a DNS mx request and the protocol do deal directly with the mail exchanger of the recipient provider is alaways SMTP.
If it were so, the mail could go directly to the right server: it should be faster and avoid useless traffic.
May this be due to the fact that maybe the recipient's SMTP server could be down for some reason or too busy to process the mail when you send it, and that therefore the advantage of use our personal SMTP server is that it takes care to try again to send the mail at regular intervals?
This is the only reason I see: actually it would be not so practical if this would be responsibility of the mail client, since maybe the user close it or shutdown the computer.
If this is the only reason: does it happen so often that an SMTP server is unable to process an email immediately?