See the version list below for details.
Requires NuGet 2.12 or higher.
Install-Package MailKitLite -Version 188.8.131.52
dotnet add package MailKitLite --version 184.108.40.206
<PackageReference Include="MailKitLite" Version="220.127.116.11" />
paket add MailKitLite --version 18.104.22.168
#r "nuget: MailKitLite, 22.214.171.124"
// Install MailKitLite as a Cake Addin #addin nuget:?package=MailKitLite&version=126.96.36.199 // Install MailKitLite as a Cake Tool #tool nuget:?package=MailKitLite&version=188.8.131.52
MailKit is an Open Source cross-platform .NET mail-client library that is based on MimeKit and optimized for mobile devices.
* HTTP, Socks4, Socks4a and Socks5 proxy support.
* SASL Authentication via ANONYMOUS, CRAM-MD5, DIGEST-MD5, LOGIN, NTLM, OAUTHBEARER, PLAIN, SCRAM-SHA-1, SCRAM-SHA-256, SCRAM-SHA-512 and XOAUTH2.
* A fully-cancellable SmtpClient with support for STARTTLS, 8BITMIME, BINARYMIME, ENHANCEDSTATUSCODES, SIZE, DSN, PIPELINING and SMTPUTF8.
* A fully-cancellable Pop3Client with support for STLS, UIDL, APOP, PIPELINING, UTF8, and LANG.
* A fully-cancellable ImapClient with support for ACL, QUOTA, LITERAL+, IDLE, NAMESPACE, ID, CHILDREN, LOGINDISABLED, STARTTLS, MULTIAPPEND, UNSELECT, UIDPLUS, CONDSTORE, ESEARCH, SASL-IR, COMPRESS, WITHIN, ENABLE, QRESYNC, SORT, THREAD, ANNOTATE, LIST-EXTENDED, ESORT, METADATA / METADATA-SERVER, NOTIFY, FILTERS, LIST-STATUS, SORT=DISPLAY, SPECIAL-USE / CREATE-SPECIAL-USE, SEARCH=FUZZY, MOVE, UTF8=ACCEPT / UTF8=ONLY, LITERAL-, APPENDLIMIT, STATUS=SIZE, OBJECTID, REPLACE, SAVEDATE, XLIST, and X-GM-EXT1.
* Client-side sorting and threading of messages (the Ordinal Subject and the Jamie Zawinski threading algorithms are supported).
* Asynchronous versions of all methods that hit the network.
* S/MIME, OpenPGP, DKIM and ARC support via MimeKit.
* Microsoft TNEF support via MimeKit.
|.NET||net5.0 net5.0-windows net6.0 net6.0-android net6.0-ios net6.0-maccatalyst net6.0-macos net6.0-tvos net6.0-windows|
|.NET Core||netcoreapp2.0 netcoreapp2.1 netcoreapp2.2 netcoreapp3.0 netcoreapp3.1|
|.NET Standard||netstandard2.0 netstandard2.1|
|.NET Framework||net452 net46 net461 net462 net463 net47 net471 net472 net48|
This package is not used by any NuGet packages.
This package is not used by any popular GitHub repositories.
* Removed APIs marked as [Obsolete] in 2.x.
* Simplify Fetch()/FetchAsync() APIs by using a new IFetchRequest parameter instead. Made previous APIs into extension methods to aid in porting from 2.x.
* Replaced Add/Remove/SetFlags() APIs with Store()/StoreAsync() and simplified the APIs by using a new IStoreFlagsRequest parameter. Made previous APIs into extension methods to aid in porting from 2.x.
* Replaced Add/Remove/SetLabels() APIs with Store()/StoreAsync() and simplified the APIs by using a new IStoreLabelsRequest parameter. Made previous APIs into extension methods to aid in porting from 2.x.
* Simplify Append()/AppendAsync() APIs by using a new IAppendRequest parameter instead. Made previous APIs into extension methods to aid in porting from 2.x.
* Simplify Replace()/ReplaceAsync() APIs by using a new IReplaceRequest parameterinstead. Made previous APIs into extension methods to aid in porting from 2.x.
* Updated SmtpClient.Send()/SendAsync() methods to return a string. (issue #1161)
* Added support for the SCRAM-SHA*-PLUS SASL mechanisms. (issue #950)
* Added authzid support for SCRAM SASL mechanisms.
* Added support for the ANONYMOUS SASL mechanism.
* Added support for an HttpsProxyClient. (issue #1251)
* Added AcceptedKeywords and PermanentKeywords to IMailFolder. (issue #1256)
* Rewrote NTLM support based on official specs. Now supports channel-binding and using the default system credentials.
* Modified ImapFolder.Fetch(int, int, ...) to shortcut if ImapFolder.Count == 0.
* Updated SmtpClient to append an ORCPT arg to RCPT TO commands and to hex-encode the ENVID parameter value.
* Improved/simplified logic for ranking SASL authentication mechisms for each client.
* Added SaslMechanism.ChallengeAsync() to facilitate future SASL mechanisms that may need to make network requests such as Kerberos/GSSAPI and perhaps even future/custom OAuth2 implementations.
* Always set SearchResults.Count/Min/Max properties if we can.
* Throw TimeoutException is case of a network time out. (issue #1269)
* Fixed parsing of IMAP flag lists to handle lowercase flag names. (issue #1277)
* Use OrdinalIgnoreCase when comparing "EARLIER" atom token.
* Avoid unnecessary string copies. (issue #1292)
* Drop support for .NET 4.5 and replace it with .NET 4.5.2
* Simplified event emissions based on EXISTS and EXPUNGED notifications. A CountChanged event is now *always* emitted when the server sends an EXISTS notification.