Menos gastos generales (sin sobre SOAP para envolver cada llamada)
Menos duplicación (HTTP ya representa operaciones como DELETE, PUT, GET, etc. que de otro modo deben representarse en un sobre SOAP).
Más estandarizado: las operaciones HTTP se entienden bien y funcionan de manera consistente. Algunas implementaciones de SOAP pueden ser complicadas.
Más legible y comprobable para los humanos (más difícil de probar SOAP con solo un navegador)
No es necesario usar XML (bueno, tampoco tiene que usar SOAP, pero no tiene sentido ya que ya está analizando el sobre).
Las bibliotecas han hecho SOAP (más o menos) fácil. Pero está abstrayendo mucha redundancia debajo, como he señalado. sí, en teoría, SOAP puede pasar por otros transportes para evitar subir sobre una capa haciendo cosas similares, pero en realidad casi todo el trabajo de SOAP que harás será a través de HTTP.