[Last Updated: Feb 12, 2016]

Web Services REST SOAP 

SOAP is a protocol.

REST is an an architectural style. It is protocol independent. It's not coupled to HTTP.

In SOAP world, there's a rigid contract between client and server. The client is tightly coupled to the service. If anything changes on the service side, we need corresponding update on the client. The client needs full knowledge on everything it will be requesting.

For a REST service, the client needs zero knowledge of the service, except for the entry point and the media type. Based on HATEOAS, the entry point response (or any REST response) returns the links to other resources that client can further explore or follow.

SOAP is more verbose, but more capable.

SOAP are important because without the rules, you can't achieve any level of standardization.

REST as an architecture style does not require processing and is naturally more flexible.

See Also