Ответ 1
Нет, вам не нужно беспокоиться, потому что если сборка уже загружена, она не будет загружена снова
Если вы вызываете Assembly.LoadFile(), вы можете загружать одну и ту же сборку несколько раз, но только если вы каждый раз загружаете сборку из разных путей. Вы можете использовать Assembly.Load(), который будет загружать сборку только один раз. Вы также можете найти уже загруженные сборки в текущем домене приложения, используя
Assembly[] asms = AppDomain.CurrentDomain.GetAssemblies();