IMail.Date
- represents the email's "Date" header. Date header is set by a sender.
Envelope.InternalDate
- is recorded using server's timezone. Assigned by the receiving IMAP server (INTERNALDATE).
Envelope.InternalDateString
- raw string value that is later parsed as Envelope.InternalDate. It is provided only for situations when its format is not recognized (INTERNALDATE).
All dates exposed by Mail.dll are converted to local/current/yours timezone.
You can use ToUniversalTime()
method on every DateTime instance to get the UTC date.
If you want to get the date/time of when the email was received by your IMAP server, you can use Envelope.InternalDate
(Imap.GetMessageInfoByUID
retrieves several email IMAP parameters, including Envelope.InternalDate
) otherwise you should be using IMail.Date
.