Конечно, загрузка библиотеки DLL без их использования приводит к более медленному запуску из-за чтения сборки с диска и проверок доказательств / безопасности. Но если память - ваша забота, вы по крайней мере можете быть уверены, что вы не будете тратить больше памяти, чем размер ваших сборок, если вы действительно не используете какие-либо типы внутри. Конечно, если эти типы указаны в конфигурации пружины, по крайней мере эти типы загружаются в память, и их статический инициализатор (если есть) будет выполнен. В редких случаях это может быть проблемой. JITing выполняется CLR для каждого метода отдельно, поэтому методы, которые вы не используете, не будут тратить процессор + память.
В любом случае вы можете разбить ваши файлы конфигурации на разделы, например, поместив все определения объектов модуля A в файл moduleA.config, все определения модуля B в файл moduleB.config и укажите только те модули для вашего конкретного приложения, которые действительно необходимы.
НТН,
Эрих
P.S .: Я также хотел бы предложить вам опубликовать вопросы, относящиеся к Spring for .NET, на наших форумах сообщества - там, скорее всего, будут ответы на ваши вопросы.