Вы отправляете несколько писем, поэтому я не верю, что вы хотите достичь, возможно.
Может быть, вы можете попробовать отправить их асинхронно, чтобы вам не пришлось ждать.
код будет примерно таким
foreach (var message in messages)
{
var mail = new MailMessage("from", "to");
ThreadPool.QueueUserWorkItem(x => client.Send(mail));
}
Я не уверен, что SmtpClient поддерживает отправку нескольких писем одновременно, в этом случае вам нужно иметь несколько SmtpClient и отправлять через неактивное
надеюсь, это поможет