FileDialog (базовый класс OpenFileDialog) имеет свойство AutoUpgradeEnabled, которое определяет, использует ли диалоговое окно преимущества более новых файловых диалогов, которые были внедрены в Vista и более новых операционных системах, когда они доступны. (Внутренне это разница между вызовом GetOpenFileName в comdlg32 или использованием интерфейса IFileDialog).
Причина этого заключается в том, что более новые диалоги поддерживают ряд функций, таких как панель «мест» (см. Коллекцию CustomPlaces). Неожиданным побочным эффектом этого является то, что более новая реализация IFileDialog не меняет текущий каталог, тогда как более старая версия это делала.
Это ошибка в реализации диалогового окна файла, которая возникает независимо от значения свойства RestoreDirectory
Если вы не хотите использовать более новую функциональность диалогового окна файла, проще всего установить в AutoUpgradeEnabled значение false.