А) Вы можете добавлять какие угодно записи в панели управления доменом (там, где вы его купили). Просто при добавлении A-записи нужно указывать IP-адрес. Если у вас есть выделенный IP на хостинге, то можно даже и не переносить ничего на NS-сервера хостинга — вы этот выделенный айпишник можете присобачивать к домену и слева и сбоку и как заблагорассудится. Обычно NS-сервера хостинга нужно прописывать в том случае, когда хостер не даёт вам выделенный IP-адрес. В этом случае на их NS информация об айпишнике будет оперативно меняться, и если вы привязали их NS-сервера к домену, всё будет обновляться в автоматическом режиме.
DNS сопоставляет интернет адреса и IP-адреса. Дальше, браузер, когда узнал у DNS на каком айпишнике находится example.com, стучится на этот IP и говорит: «дай мне файл index.php с сайта example.com». Веб-сервер смотрит и видит, что у него в настройках есть example.com, вытаскивает и интерпретирует файл index.php из соответствующей папки. В ситуации, когда в DNS для сайта images.example.com прописан IP гугла, браузер стучится на IP гугла и просит дать ему какой-нибудь файл с сайта images.example.com, а гугл ему отвечает: «иди нах, у меня в настройках не прописано обслуживать запросы для сайта images.example.com. Ты можешь что угодно у себя в DNS писать, но у меня есть настройки web-сервера и там про images.example.com ничего нет».
Б) pdd.yandex.ru — только для почты
В) Да, примерно так. Покупает домен и в панели управления доменом (у godaddy) прописывает NS-записи @.example.com указывая в них NS-сервера Hetzner. Потом у Hetzner можно будет в панели управления добавлять поддомены.