Разница есть
Для примера возьмём задачу получить IP адрес пользователя (За креативность не ругайтесь, как раз такую таску делаю).
Для выбора есть два варианта:
1 - Через Dns
2 - Через HttpContext
Отличие в том, что при использовании Dns.GetHostEntry(Dns.GetHostName()) вы сможете получить некий список IP адресов и вроде бы проблем в этом нету. Но их нету лишь до того времени, пока вы будете работать на Windows. Такой способ получения IP НЕ БУДЕТ работать на других системах (Linux/Mac) и у вас возникнут проблемы с деплоем на эти системы.
Почему?
Dns это класс, который входит в библиотеку .Net Framework а именно System.Net, в тоже время HttpContext(HttpContextAccessor) входит в библиотеку Microsoft.AspNetCore.Http, соответственно, проблем с деплоем на другие системы у вас не возникнет
Приходим к тому заключению (Думаю, это знаю почти все, что работали вообще на .Net Core системе), что система .Net Framework грубо привязано к ОС Windows, а .Net Core является мультиплатформенной платформой для разработки