Mi associo ad oregon, la mail si può mandare, tutto è legato alle credenziali e ai server, oggi la sicurezza impone che chi invia una mail rispetti dei parametri.
Ti posto un esempio di invio mail con allegato usando un account google, oramai tutti ne hanno uno.
Google vedrà l'invio come eseguito da app non sicura, perché il tuo codice di invio è privo di un certificato di sicurezza registrato.
Segui le info contenute nel codice:
aggiungi:
using System.Net;
using System.Net.Mail;
using System.Net.Mime;
// esempio invio mail + allegato con un account google,
// ultimamente google non considera sicuro l'invio di mail senza certificazione,
// per permettere l'invio, abilitare: Accesso app meno sicure
// https://www.google.com/settings/security/lesssecureapps
MailMessage mail = new MailMessage();
SmtpClient SmtpServer = new SmtpClient("smtp.gmail.com");
string MailAccount = "chi.invia@gmail.com"; // aggiungi il tuo indirizzo mail google
string Password = "tuapassword"; // la tua password
string Destinatario = "chi.riceve@tiscali.it"; // a chi va
mail.Subject = "Mail da C#"; // oggetto
mail.Body = "In allegato file .txt, cordiali saluti"; // testo della mail
mail.From = new MailAddress(MailAccount);
mail.To.Add(Destinatario);
// omettere se non serve allegato
System.Net.Mail.Attachment attachment;
attachment = new System.Net.Mail.Attachment("c:/allegato.txt"); // deve esistere
mail.Attachments.Add(attachment);
// -------------------------------
SmtpServer.Port = 587;
SmtpServer.Credentials = new System.Net.NetworkCredential(MailAccount, Password);
SmtpServer.EnableSsl = true;
SmtpServer.Send(mail);
MessageBox.Show("inviata");