Учитывая такой список:
List<int> intList = new List<int>();
intList.Add(5);
intList.Add(10);
intList.Add(15);
intList.Add(46);
как вы получаете индекс максимального элемента в списке? В этом случае он находится в индексе 3.
Изменить: стыдно, что стандартный LINQ не передает эту функциональность.