Мне нужно получить список сборок в каталоге. Есть ли другой способ, кроме этого?
System.IO.Directory.GetFiles(directory, "*.dll")





Управляемые сборки также могут быть EXE-файлами. И ваш код просто получает файлы с расширением «dll». Также будут возвращены Ntive DLL, которые не являются сборками.
В нескольких случаях, когда мне нужно было это сделать, я просто получал список всех файлов (аналогично тому, что вы сделали), а затем использовал Assemby.LoadFrom, чтобы попытаться загрузить каждый, перехватывая исключение в случае его собственного. Типичным исключением является ReflectionTypeLoadException, хотя вы также можете получить это, если ссылку не удается разрешить.
Я это понимаю, поэтому и спросил.