Как и совет Матти, неясно, почему вы просматриваете все подзначения. Почему бы просто не получить тот, который вы хотите? Примерно так:
using System;
using Microsoft.Win32;
class Test
{
static void Main()
{
using (var key = Registry.CurrentUser.OpenSubKey
(@"Software\Microsoft\Windows\CurrentVersion\" +
@"Explorer\ComDlg32\LastVisitedMRU", false))
{
string value = (string) key.GetValue("MRUList");
Console.WriteLine(value);
}
}
}
(обратите внимание на оператор using, чтобы всегда закрывать раздел реестра.)
Вы могли бы также захотеть поставить некоторые тесты, чтобы убедиться, что ключ и значение существуют, конечно.