A única diferença está na estrutura da mensagem. O SOAP utiliza o HTTP como protocolo de transporte. O SOAP suporta características de segurança de serviços da web como mensagens confiáveis, confirmação, etc., enquanto o HTTP não. O serviço da web REST (forma leve) suporta o HTTP. Os serviços da web utilizam o protocolo de mensagem SOAP e o protocolo de transporte HTTP. Se o seu requisito for simples ou complexo e deseja consumir ou hospedar serviços da web, utilize o protocolo SOAP. Se o requisito for enviar uma mensagem para o servidor de aplicativos ou para um serviço da web simples (que não requer cabeçalho SOAP e mais), opte pelo HTTP.