IZennoList list = project.Lists["List"]; // список, в котором искать
string str = project.Variables["text"].Value; // переменная с текстом, который искать
lock (SyncObjects.ListSyncer) {
List<string> tmpList = list.Where(s => s.Contains(str)).OrderByDescending(s => s.Length).ToList();
if (tmpList.Count > 1) {
tmpList.RemoveAt(0);
tmpList = list.Except(tmpList).ToList();
list.Clear();
list.AddRange(tmpList);
}
}