Попробовал варианты, лог сменился на ошибку с "ex", и она теперь выпадает даже при любых других вариантах кода, например удаления файлов:
string dir = @"C:\123";
foreach (string file in Directory.GetFiles(dir))
File.Delete(file);
foreach (string file in Directory.GetDirectories(dir))...