Lo so, ce ne sono un sacco, ma mi segno questo in quanto l'autore promette che è il migliore che ci sia rispetto a tanti in giro...

Il codice è su Codeproject a questo indirizzo.

using System.Text.RegularExpressions; public static class TestEmail { public const string MatchEmailPattern = @"^(([a-zA-Z0-9]+[\w-]*\.)*([a-zA-Z]{1}[\w-]*|[\w-]{2,}))@" + @"((([0-1]?[0-9]{1,2}|2{1}[0-5]{2})\.([0-1]?[0-9]{1,2}|2{1}[0-5]{2})\.([0-1]?[0-9]{1,2}|2{1}[0-5]{2})\.){1}|" + @"(([a-zA-Z]+[\w-]*\.)+))([a-zA-Z]{2,4}|([0-1]?[0-9]{1,2}|2{1}[0-5]{2}))$"; public static bool IsEmail(string email) { if (email != null) return Regex.IsMatch(email, MatchEmailPattern); else return false; } }