how can I track emails in C#


I want to build a bulk email system for all people subscribed to my newsletter
but I want to get statistics like
who received the email
who open it (if possible)
and who on my list didn't receive it

Kindly help

my code

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Net.Mail;

public partial class emailTest : System.Web.UI.Page
    protected void Page_Load(object sender, EventArgs e)
        Label1.ForeColor = System.Drawing.Color.Blue;
        Label1.Text = "Ready";
    protected void Button1_Click(object sender, EventArgs e)

        string input = TextBox3.Text;
        List<string> emails = new List<string>(
                                   input.Split(new string[] { "\n" },
        string total = emails.Count().ToString();
        int counter = 0;


            foreach (string email in emails)
                SmtpClient smtpClient = new SmtpClient();
                MailMessage message = new MailMessage();
                    MailAddress from = new MailAddress("", TextBox1.Text);
                    message.From = from;
                    message.Subject = TextBox2.Text;
                    message.IsBodyHtml = true;
                    message.Body = Editor1.Content;
                    smtpClient.EnableSsl = false;
                    message.BodyEncoding = System.Text.Encoding.UTF8;
                    MessageBox.Show("email sent");
                catch (Exception ex)
                    Label1.ForeColor = System.Drawing.Color.Red;
                    Label1.Text = "FAIL in side loop" + ex;
                    //throw ex;



            Label1.ForeColor = System.Drawing.Color.Green;
            Label1.Text = "Send successfully "+counter + " of " + total;
        catch (Exception ex)
            Label1.ForeColor = System.Drawing.Color.Red;
            Label1.Text = "FAIL" + ex;


EQ Forum Admin
Staff member
Maybe there is a way to combine your programming with the Google Analytics API and some programming against your web site?

Delivered emails you can get from your own logs.

Received is not the same as delivered to me.

Delivered is did the receiving mail server accept, vs received means you want to confirm it reached their inbox or other "not spam" folder?

Open rate you can get from web site tracking links.