Установка библиотек и CLR также позволяет использовать общие сборки. Вы действительно хотите, чтобы сотни копий CLR свободно работали на вашем компьютере? Мне нравится тот факт, что я знаю, что определенные вещи будут доступны для моего приложения. Намного лучше, чем беспокоиться о ... Скомпилировал ли я для среды выполнения версии 1.4.5 или 1.4.6 ... может быть, даже 1.2.5 (JRE может быть проблемой)
Также есть много частей .Net Framework, которые являются просто управляемыми оболочками поверх неуправляемых API. А также множество других сборок, которые вы используете, но на которые нет прямой ссылки. (см. mscoree.tlb и многие другие)