Просто для пояснения читателям: LinkedHashMap ведет себя таким образом только при сборке с одной конкретной перегрузкой конструктора. Обычно элементы поддерживаются в порядке вставки. (Мне это немного странно, но не берите в голову.)
Я не верю, что в .NET есть такой класс. Построить его будет несложно, используя связанный список элементов и словарь от ключа к узлу связанного списка. В этом случае доступ будет состоять из выборки связанного узла списка, перемещения его в заголовок и возврата значения.
Я был бы рад реализовать это сегодня или завтра, если хотите, - хотя, возможно, не с полным модульным тестированием и т. Д. (Полное тестирование коллекции - дело длительное!)