C#: Failure Sending Mail
<p><strong>I've tried multiple thing like:</strong></p>

<ul>
<li>Use different variations, ports, SSL on or off, ...</li>
<li>A different mail service provider</li>
<li>Setting the "Allow less secure apps" in my gmail account settings</li>
</ul>

<p><strong>Question:</strong></p>

<ul>
<li>How will I fix this error and send attachments successfully?</li>
<li>What causes this error?</li>
<li>Is it because the port may be blocked?</li>
</ul>

<p><strong>Error:</strong></p>

<pre><code>Exception thrown: 'System.IO.IOException' in System.dll
Exception thrown: 'System.Net.Mail.SmtpException' in System.dll
System.Net.Mail.SmtpException: Failure sending mail. ---&gt; System.IO.IOException: Unable to read data from the transport connection: net_io_connectionclosed.
   at System.Net.Mail.SmtpReplyReaderFactory.ProcessRead(Byte[] buffer, Int32 offset, Int32 read, Boolean readLine)
   at System.Net.Mail.SmtpReplyReaderFactory.ReadLines(SmtpReplyReader caller, Boolean oneLine)
   at System.Net.Mail.SmtpReplyReaderFactory.ReadLine(SmtpReplyReader caller)
   at System.Net.Mail.SmtpConnection.GetConnection(ServicePoint servicePoint)
   at System.Net.Mail.SmtpTransport.GetConnection(ServicePoint servicePoint)
   at System.Net.Mail.SmtpClient.GetConnection()
   at System.Net.Mail.SmtpClient.Send(MailMessage message)
   --- End of inner exception stack trace ---
   at System.Net.Mail.SmtpClient.Send(MailMessage message)
   at TreeView.TreeView.&lt;Email&gt;d__28.MoveNext() in C:\Users\Alexander\Documents\Visual Studio 2015\Projects\TreeView\TreeView\TreeView\TreeView.cs:line 365
</code></pre>

<p><strong>Code:</strong></p>

<pre><code>public void Email()
{
    try
    {
        SmtpClient client = new SmtpClient()
        {
            Host = @"smtp.gmail.com",
            Port = 465,
            Credentials = new NetworkCredential(@"mailid@gmail.com", @"Password"),
            UseDefaultCredentials = false,
            DeliveryMethod = SmtpDeliveryMethod.Network,
            EnableSsl = true
        };

        MailMessage message = new MailMessage()
        {
            From = new MailAddress(@"mailid@gmail.com"),
            Subject = @"Test",
            Body = @"Test",
            Priority = MailPriority.Normal
        };

        message.To.Add(@"mailid@example.com");
        Attachment file = new Attachment(@"C:\Users\Alexander\Documents\File.txt");
        message.Attachments.Add(file);

        client.Send(message);
    }
    catch { }
}
</code></pre>