One one planet, there's objects, methods, properties, and fast local connections over shared memory and LANs. On the other planet, there's XML documents, slow and unreliable networks, and scalable shared nothing architectures. SOAP provides the necessary hallucination that nothing has changed for those who don't have time for change in their lives. Pass integers and ordinary strings via SOAP you're back to 1985. The fact that parameters are passed as XML documents amounts to very little.
SOAP hides the transport details.
SOAP could use a binary format for all developers care. XML just makes it easier to build the SOAP infrastructure. On the other hand, SOAP is very valuable as a free and standard transport layer for XML documents. Use SOAP to transport strings containing XML and now you have something interesting. With XML you can pass complex types, use XSLT to transform data to HTML, etc.