`smtpClient.SendAsync(this, userState)` method doesn't return a Task. I'm not sure if this will work.