Я отбросил API, которые принимали UID, потому что требовал, чтобы MailKit сохранял свою собственную копию сопоставления UID с индексом, что не только требовало большего использования памяти, но также было сложнее поддерживать синхронизацию с сервером.
Теперь вам нужно вызвать client.GetMessageUids (), чтобы получить собственный список UID, а затем выяснить, какие индексы вы хотите, основываясь на этом списке UID.
var uids = client.GetMessageUids ();
var indexes = new List<int> ();
for (int i = 0; i < uids.Length, i++) {
if (!HaveSeen (uids[i]))
indexes.Add (i);
}
// now you have a list of indexes that you want