Cristian,
il tuo post è eloquente, ma glissa su alcuni aspetti della realtà dei web service che sono di fatto alla radice del declino di SOAP, soprattutto su servizi mainstream.
Le tue considerazioni sono perfettamente condivisibili se ti metti dalla parte del consumatore di un servizio. Soprattutto se hai a disposizione tool evoluti come Visual Studio che generano decine di linee di boilerplate code per te, è molto semplice ridurre l'utilizzo di un web service SOAP a due linee di codice: crea il proxy, istanzia il proxy.
Facciamo un fast-forward e passiamo a cosa succede quando esce la versione 2.0 del servizio, oppure quando semplicemente devi correggere un baco nel servizio stesso.
Supponiamo per esempio che un parametro intero debba passare da 32 a 64 bit. Niente di drammatico - il cambiamento è perfettamente compatibile con la versione passata.
Grazie a SOAP e al suo strong typing però, il WSDL non è più lo stesso, quindi tutti i client che si basavano sull'interfaccia con l'Int32 non possono usare quella nuova (funzionalmente compatibile) con un Int64. L'unica scelta come fornitore del servizio è tenere entrambi i servizi in vita side-by-side, magari con della logica di thunking che almeno unifichi l'esecuzione.
Dal punto di vista del service provider, SOAP è un incubo. Ti trovi a dovere supportare molto rapidamente una miriade di major e minor versions o a dovere fare degli hack orrendi per incastrare in un dato WSDL cose che non erano lontanamente previste.
Tutto questo con REST sparisce - da cui la sua crescente popolarità.
Che poi il Web 2.0 sia una colossale minestra riscaldata (si faceva AJAX già nel 2000 anche se allora non aveva il nome fico, e REST/XML si chiamava XML over HTTP

) è un fatto. Quello che c'è di nuovo è la consapevolezza di utilizzare le tecnologie insieme in un modo più organico.
Saluti
--Alessandro