I currently figure out the similar is both using internet protocol (HTTP) to exchange data between consumer and provider.
The difference is:
- SOAP is a XML-based message protocol, while REST is an architectural style
- SOAP uses WSDL for communication between consumer and provider, whereas REST just uses XML or JSON to send and receive data
- SOAP invokes services by calling RPC method, REST just simply calls services via URL path
- SOAP doesn't return human readable result, whilst REST result is readable with is just plain XML or JSON
- SOAP is not just over HTTP, it also uses other protocols such as SMTP, FTP, etc, REST is over only HTTP
That's everything I know as the differences between them. Could anyone correct me and add more.