Во-первых строках: уберите пустые catch! От этого порою приложение ведет себя странно. Ошибки надо обрабатывать, а не глушить...
Что касается заполнения:
ListView.BeginUpdate();
...
ListView.EndUpdate();
Субьективно по скорости так же как и у проводника. Что касается картинок... Можно попробывать подгружать только при необходимости — exe-файлы похоже он так грузит (или на фоне)
данное сообщение получено с www.gotdotnet.ru
ссылка на оригинальное сообщение