Как сделать проверку валидности почты перед отправкой?
Достоверную валидность почты сделать невозможно. Потому что на стороне приема я могу сделать с письмом все, что захочу. Я могу принять письмо на несуществующего юзера и отправить ответ. Я могу не принимать письмо на существующего юзера, отправляя ошибку No such user.

Технически проверку введенного адреса сделать несложно:
- взяли адрес, отрезали часть после собаки
- нашли MX
- подключились по 25-му порту, сказали HELO/EHLO, потом RCPT TO
- распарсили ответ

Проблема в том, что ответ этот будет не совсем достоверным. Да, на 90% серверов он будет правдив. Но не всегда и не везде.
Добрый день!
Самый лучший способ валидации списка - это рассылка.
Да, есть сервисы, есть программы. Практически все работают криво. Достаточно сказать, что почти все не могут проверять почты на майл ру. А это почти половина всех почт рунета.
Я для чистки использую три разные программки. 
Первая простенькая, быстренько проверяет по MX записи, есть она у этого домена или нет. Отбрасываются несуществующие домены и домены без почтовой записи. 
Вторая - Email Verifier
Она чистит большинство почт, кроме Mail.Ru и некоторых западных, главное четко чистит Яндекс и Gmail

Третья чистит только Mail Ru - MailCheckerOnline