using System.Collections.Generic;
public static void Main()
var emailswithIDs = new List<string>() {
Dictionary<string, string> emailToId = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
for (int i = 0; i < emailswithIDs.Count; i += 2)
emailToId.Add(emailswithIDs[i + 1], emailswithIDs[i]);
var emails = new List<string> {
.Where(email => emailToId.ContainsKey(email))
.Select(email => emailToId[email]);
Console.WriteLine(string.Join(", ", ids));