Согласно документации для System.Assembly:
LoadFile и LoadFrom предназначены для редких сценариев, в которых необходимо определяется по пути.
Они предлагают чаще загружать сборку по ее отображаемому имени (например, «System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089»).
Это не имеет для меня никакого смысла. Если вы хотите сослаться на сборку по ее версии и открытому ключу, вы должны добавить ссылку во время компиляции; вы не будете загружать его во время выполнения, используя класс Assembly. Типичный сценарий загрузки сборки во время выполнения — это когда вы загружаете подключаемый модуль, что будет выполняться по пути, поскольку вы либо сканируете каталог на наличие подключаемых модулей, либо читаете какой-то манифест, в котором указано, где они находятся.
Почему в документах говорится, что среди сценариев, в которых вы динамически загружаете сборку, загрузка по пути является «редкой»? Насколько я могу судить, он загружает его по отображаемому имени, что бывает редко.