Last Updated: 2021-11-19
  • REST: REpresentational State Transfer
  • SOAP: Simple Object Access Protocol

Here are some key differences between the 2:

  • Underlying protocol: REST uses HTTP/HTTPS, SOAP can use (almost) anything, like HTTP/HTTPS/SMTP, etc
  • SOAP uses XML, strict contract in the form of WSDL. REST has no limits and contracts, light weight comparing to SOAP.
  • REST is stateless; SOAP supports stateful calls.
  • REST response can be cached(GET requests); SOAP cannot.
  • REST is easier to develop comparing to SOAP

To summarize, the root cause of SOAP's problems and unpopularity: XML