Como enviar um email com c # através do Gmail

Estou recebendo um erro ao tentar enviar um email pelo meu serviço da web. Tentei ativar o acesso a aplicativos menos seguros, desativando a verificação em duas etapas e fazendo login na conta por meio de um navegador da web. Nenhuma das soluções em SO funcionou para mim. Ainda estou recebendo:

Erro: System.Net.Mail.SmtpException: o servidor SMTP requer uma conexão segura ou o cliente não foi autenticado. A resposta do servidor foi: 5.5.1 Autenticação necessária.

O que posso fazer para corrigir esse problema?

namespace EmailService
{
    public class Service1 : IService1
    {    
        public string SendEmail(string inputEmail, string subject, string body)
        {
            string returnString = "";
            try
            {
                MailMessage email = new MailMessage();
                SmtpClient smtp = new SmtpClient();
                smtp.Host = "smtp.gmail.com";

                // set up the Gmail server
                smtp.EnableSsl = true;
                smtp.Port = 587;
                smtp.Credentials = new System.Net.NetworkCredential("[email protected]", "mypassword");
                smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
                smtp.UseDefaultCredentials = false;

                // draft the email
                MailAddress fromAddress = new MailAddress("[email protected]");
                email.From = fromAddress;
                email.To.Add(inputEmail);
                email.Subject = body;
                email.Body = body;

                smtp.Send(email);

                returnString = "Success! Please check your e-mail.";
            }
            catch(Exception ex)
            {
                returnString = "Error: " + ex.ToString();
            }
            return returnString;
        }
    }
}

questionAnswers(1)

yourAnswerToTheQuestion