Enviar e-mails é uma tarefa simples como um todo,
A partir do .NET 4.5 SmtpClient implementa async método “awaitable” SendMailAsync. Como resultado, para enviar e-mail de forma assíncrona é o seguinte:
public async Task SendEmail(string toEmailAddress, string emailSubject, string emailMessage) { var message = new MailMessage(); message.To.Add(toEmailAddress); message.Subject = emailSubject; message.Body = emailMessage; using (var smtpClient = new SmtpClient()) { await smtpClient.SendMailAsync(message); } }
Vale lembrar ainda que você precisa colocar suas credenciais e configurações de SMTP, veja esta de exemplo para SMTP de envio do Gmail do Google:
var smtp = new SmtpClient { Host = "smtp.gmail.com", Port = 587, EnableSsl = true, DeliveryMethod = SmtpDeliveryMethod.Network, UseDefaultCredentials = false, Credentials = new NetworkCredential(fromAddress.Address, fromPassword) };
Simples não é mesmo? 🙂
Um grande abraço!