There are many differences between SOAP and RESTful web services.
| SOAP | REST |
|---|---|
| SOAP is a protocol. | REST is an architectural style. |
| SOAP stands for Simple Object Access Protocol. | REST stands for Representational State Transfer. |
| SOAP can’t use REST because it is a protocol. | REST can use SOAP web services because it is a concept and can use any protocol like HTTP, SOAP. |
| JAX-WS (Java API for XML Web Services) is the java API for SOAP web services. | JAX-RS(Java API for RESTful Web Services) is the java API for RESTful web services. |
| SOAP defines standards to be strictly followed. | REST does not define too much standards like SOAP. |
| SOAP permits XML data format only. | REST permits different data format such as Plain text, HTML, XML, JSON etc. |
| SOAP defines its own security. | RESTful web services inherits security measures from the underlying transport. |
| SOAP requires more bandwidth and resource than REST. | REST requires less bandwidth and resource than SOAP. |
| SOAP uses services interfaces to expose the business logic. | REST uses URI to expose business logic. |
| SOAP is slower than REST. | REST is much more lightweight and faster. |
| SOAP is less preferred than REST. | REST more preferred than SOAP. |
