2. Держим на виртуальных машинах. Минимально хватало 1 ядро процессора и 1 ГБ памяти, 20-25 ГБ виртуального диска. Сейчас выделено более жирно - по 2 ядра и по 2 ГБ памяти. Серьёзно, для двух ролей на сервере (AD DC + DNS) этого за глаза хватает. Так что можно навесить такую виртуальную машину на любой уже имеющийся сервер с другими ролями и он даже не заметит повышения нагрузки. Либо выделить слабое, но надёжное железо.
3. Минимум два для отказоустойчивости, причём если это виртальные машины, то нет смысла оба держать на одном хосте. У нас по городу разбросано 5 офисов, в каждом из них я разместил один контроллер домена. Идея в том, что если пропал выход в интернет, то любой офис может работать автономно.
От количества пользователей практически не зависит количество контроллеров домена, нагрузка на них маленькая, по нагрузке и один справляется (ну если будет несколько тысяч пользователей, тогда уже другой разговор).
4. С личных компьютеров или со служебных? Личные в домен не логинятся, просто RDP или VPN + RDP. Служебные могут в течение ~месяца логиниться без связи с контроллером домена. Логин в домен через VPN будет чуть посложнее. Если клиента VPN поднять на домашнем роутере, то проще.
5. С юридической точки зрения надо спрашивать у юристов. Вряд ли вы отвечаете за лицензии в других городах. Если это личные компьютеры, то совершенно точно вы за них не отвечаете. :) Зато если там лицензионная home-версия, то в домен не сможете ввести. Опять же, личные компы не надо вводить в домен, даже если там винда professional и лицензионная.