Mi intrometto per dire che il problema sta alla base... SOAP e JSON non sono due alternative visto che sono due elementi non paragonabili. Il primo è un protocollo, il secondo è un modo standard di formattare i dati.
Puoi paragonare (ed è forse quello che volevi fare all'inizio) JSON ed XML.
Tutti e due sono degli standard, tutti e due sono potenti, JSON è più semplice da usare ma diventa ostico se vuoi far viaggiare dei tipi con metadati, XML ha più overhead ma è più complesso da gestire.
Il consiglio? Usa quello che ti viene più semplice/quello che conosci meglio.