Покажем на аналогии. Представьте, что сайт - это дом. Большой многоэтажный с квартирами или отдельный домик в деревне, неважно. Сайты бывают разные, как и дома. Из общего у домов с сайтами непременное наличие места размещения и адрес этого места. И если у дома это кусок земли и почтовый адрес, то у сайта - хостинг и домен.
Хостинг - это услуга предоставления места для сайта на сервере, да и само место тоже называют хостингом. Сервер постоянно подключён к интернету, у него есть необходимое программное обеспечение для работы сайтов.
Домен - это имя сайта. Например softnavi.ru - доменное имя второго уровня. ru - первый уровень, softnavi - второй. Вы не сможете попасть на сайт .ru, потому что его не существует. А вот доменное имя второго уровня вы можете придумать и купить. Имя должно быть уникальным, так что изобрести оригинальный буквенный адрес сайта - это уже почти искусство.
По правде сказать, адрес сайта состоит из цифр, доменное имя придумано для удобства людей. А чтобы любой компьютер знал соответствие имени этим цифрам, существуют специальные dns-сервера. Но это совсем другая история.
Ещё важно знать, что хостинг можно купить в одном месте, а доменное имя в другом, хотя обычно хостинговые компании всячески содействуют покупке имён через них. Сайт может переехать на другой хостинг и оставить старое имя. Сайт может сменить доменное имя, если хозяину удалось купить имя получше, или иметь сразу несколько имён. Возможности сайта немного отличаются от возможностей домов, но это и понятно: дома живут в реальности, а сайты - тут, в интернете.