How to send Email using Gmail Server

I have seen many developers asking this questions and hence thought of writing this brief post. This post describes the code to send an email in C# using Gmail as mail server.

SmtpClient smtpServer = new SmtpClient("");
smtpServer.Port = 587;
smtpServer.Credentials = new NetworkCredential("", "PASSWORD");
smtpServer.EnableSsl = true;

MailMessage mail = new MailMessage();
mail.From = new MailAddress("", "USER NAME");
mail.IsBodyHtml = true;
mail.To.Add(""); //Sender's Email
mail.Cc.Add(""); //Email address of person to be put in Cc
mail.Bcc.Add(""); //Email address of person to be put in BCc
      mail.Subject = "Test Subject";
      String body = "Test Email using Gmail Server";
      mail.Body = body;
catch (Exception)

Hope you like it. Thanks for reading!

  • Michael

    I would definitely thank you with this great read through!! Bookmarked it.

  • Andrew

    To much code. better:
    SmtpClient smtp = new SmtpClient(“”, 587);
    smtp.Credentials = new NetworkCredential(“”, “MySuperDuperPassword”);
    smtp.EnableSsl = true;
    MailMessage msg = new MailMessage(“”, “”, “subject”, “body”);

    • Nitesh

      Andrew, You compressed my code :). Few things –
      1. It wont send HTML messages
      2. It does not add any email address as Cc or Bcc
      3. No Exception Handling
      4. If you want to customize the From name, you won’t be able to do with your bit of code.

  • Pingback: How to send Email using Gmail Server | Open Source Code |

  • new


    I am new to this, but have a server. What should I do next?

    • Nitesh

      @new, Let me know where you’re stuck. If you use the above code and replace the credentials properly, you should be able to send emails.

  • Moshster

    @Andrew – When it makes no difference to runtime performance, readable code is preferable to compressed source code.

    • Nitesh

      @Mohster, Agreed!