Я думаю главная разница в том, что веб-сервис описывает структуру передаваемых данных и автоматически проверяет её валидность, плюс можно всегда получить схему и посмотреть какие типы данных передаются. А в http можно послать что угодно и непонятно что. К тому же http поддерживает автоматически разные типы данных, что удобно для Web, например отдавать уже готовую html страницу