C# Подключение библиотек

Насколько я понял есть два варианта подключения библиотек (*.dll файлов):

  1. подключить их в самом проекте в References
  2. подключение через Assembly

Мне интересно какие преимущества каждого из этих вариантов подключения. Когда нужно использовать 1 способ, и когда 2.

Когда библиотеки подключаются через References, то они будут загружаться при запуске самого приложения, поэтому для них будет выделятся память (даже если они изначально не используются). Подключение же библиотек через Assembly позволит подключить библиотеку именно в нужный для этого момент, тем самым оптимизировав использование оперативной памяти.