Ответ 1
В разделе web.config:
The assemblies element defines a collection of assembly names that are used during compilation of an ASP.NET application.
В проектах веб-сайтов обычно используется элемент сборки, поскольку в файле проекта нет места хранения ссылок, используемых веб-сайтом. Ссылки проекта не будут применяться к веб-сайту, так как у него нет подходящего файла проекта для их хранения, поэтому все сохраненные сборки должны храниться в файле web.config. Здесь есть интересное, хотя и не связанное напрямую обсуждение здесь.
В проектах веб-приложений могут использоваться как элементы сборок, так и ссылки на проекты.
Наличие ссылки в элементе сборки также означает, что вам не нужно добавлять @register вверху любых страниц .aspx, использующих это пространство имен. Подробнее об этом здесь.