Background
In this article, we will learn how to send emails from an ASP.Net C# web application. Let us see step-by-step so beginners also can understand the logic to send emails from any provider. Their are many techniques to send emails from ASP.Net but in this article we will use a SMTP server with the Gmail provider to send the emails.
Prerequisites
- Active internet connection.
- Email id of any provider such as Gmail, Yahoo or your organization to send emails.
Let us create the application to send the emails from ASP.Net as:
- "Start" - "All Programs" - "Microsoft Visual Studio 2010".
- "File" - "New Project" - "C#" - "Empty web site" (to avoid adding a master page).
- Provide the project a name, such as "Sending Emails" or another as you wish and specify the location.
- Then right-click on Solution Explorer and seelct "Add New Item" - "Default.aspx" page and one class file.
- Drag and drop three Text Boxes and two buttons.
Then the source section of the Default.aspx page looks as in the following:
To send Emails in ASP.Net, the following namespaces must be added:
- using System.Net.Mail;
- using System.Net;
Now, move to the web.config file and add the email credentials in the app setting section so in the future, if your email credentials are changed then their is no need to change them in your code file since you can simply the change values in your app settings of the web.config file. After adding the credentials, the app setting section of the web.config file looks as in the following:

In the preceding app settings section, we are adding the sender email details credentials such as email id and word, so we can send the emails and later on we will read these values in the .cs file.
Note
In the preceding app Settings section add your valid email and word so emails can be sent from your email id to others.
Now add the separate class file by right-clicking on the Solution Explorer, however this is not necessary since you can also write this code in the default.aspx.cs file but for flexibility we are adding it in a separate code file.
After writing the email sending logic code, the class file will look as in the following:

In the preceding class file, we have created one simple static function to send the emails that takes three parameters that are:
string ToEmail: recipient email id
string Subj: subject of the email
string Message: Email body or message
Now call the preceding static function on the button click of the "default.aspx.cs" page as in the following:

I hope you have done all the preceding steps, now run the application and add the email details in all the text boxes and click on the send button as:
From the preceding example we learned how to send emails, I hope you have done it.
Note
- For detailed code please download the Zip file attached above.
- Don't forget to update the "Web.config" file for your email credential details.
Summary
We learned how to send emails in ASP.Net. I hope this article is useful for all students and beginners. If you have any suggestion related to this article then please contact me.

Khushboo KumariPosted Jan 24, 2018, 4:55 AM
I set enable ssl to false again getting error
Khushboo KumariPosted Jan 24, 2018, 4:51 AM
Hello vithal, i tried your code but i am getting error as An exception of type 'System.Net.Mail.SmtpException' occurred in System.dll but was not handled in user code Additional information: The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required. Learn more at
vishal kingPosted Sep 21, 2017, 3:41 AM
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first. l188sm17209588pfl.28 - gsmtp
George MasihPosted Jul 21, 2017, 3:29 AM
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required. How ot solve this problem
sonia groverPosted Feb 8, 2017, 2:43 AM
How to get rid of this problem pls reply
sonia groverPosted Feb 8, 2017, 2:43 AM
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first. l188sm17209588pfl.28 - gsmtp
Vithal WadjePosted Jul 13, 2016, 11:13 PM
Thanks
Vignesh ManiPosted Jul 13, 2016, 5:31 PM
Nice
Bala PrasathPosted Apr 13, 2016, 3:40 AM
PLS SEND TO ATTACH FILE IN MAIL
Sonu ChaudharyPosted Mar 31, 2016, 4:43 PM
thanks for code
Bhargav ChandegaraPosted Jan 21, 2016, 12:12 AM
?
Bhargav ChandegaraPosted Jan 21, 2016, 12:12 AM
how we set smtp enable
Vithal WadjePosted Jan 15, 2016, 9:25 AM
Thanks
Vahid SalimiPosted Jan 15, 2016, 3:22 AM
Thank you very much. it worked for me.
DeepAk BhAttPosted May 20, 2015, 3:16 PM
The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first. ud3sm16893426pbc.10 - gsmtp...... what will be the solution ....pls sir cmnt
rajeev sharmaPosted Apr 3, 2015, 9:01 AM
why this show The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required.
Vithal WadjePosted Feb 16, 2015, 1:19 PM
set smtp.Enbaledssl=false;
Vivek Kumar VishwasPosted Feb 16, 2015, 10:29 AM
sorry it's showing a The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required...smtp.Credentials = NetworkCred;Line 45: smtp.Port = 587;Line 46: smtp.Send(mailMessage); //sending Email ..................................kindly help me to send mail
Vithal WadjePosted Feb 13, 2015, 1:29 PM
thanks sir
Abdul SamadhuPosted Feb 12, 2015, 11:28 PM
thanks vithal
Vithal WadjePosted Feb 11, 2015, 12:45 PM
refer my other article ,regarding email which i have already written
Abdul SamadhuPosted Feb 11, 2015, 5:10 AM
Can u answer this? I want to add Attachment files in this project.How can i write a code??
Vithal WadjePosted Nov 21, 2014, 5:40 AM
set ,smtp.EnableSSL=false;
lee zhiyangPosted Nov 21, 2014, 5:27 AM
Please help me solve it, thanks
lee zhiyangPosted Nov 21, 2014, 5:27 AM
why me after click the send button, it will jump to the sendemail.cs page, and show the smtp.Send(mailMessage); and the detail is the SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.5.1 Authentication Required.