домен - это то, что ты покупаешь (точнее берешь в аренду), имя домена обычно совпадает с базовым доменным именем (например example.com). В своем домене ты можешь создавать поддомены, можешь создавать другие записи, не только А-записи, например ns запись, mx запись и др.
Доменное имя - это конкретная запись в домене, например www.example.com, example.com, home.example.com, smtp.example.com, для которых ты обычно прописываешь IP адреса для резолва.
Доменное имя, в отличие от домена, обычно должно в конечном счете преобразовываться в конкретный IP адрес. Доменное имя, в отличие от домена, хостеры не продают (ну или это очень хитрый наебизнес тогда).
URL это вообще ссылка на ресурс, которая может включать в себя название протокола, доменное имя, путь к конкретной страничке и дополнительные параметры, например
https://example.com/files/report.php?date=2017&typ...