At its most basic level, SOAP is a messaging protocol, REST is a design philosophy, not a protocol. When you base WebService on a SOAP protocol, you basically follow SOAP rules to create a service request, send a request to the server, receive a request on the server, process the request, and return the results as a SOAP message. SOAP does not talk about how the client benefits from the service, nor about how to create the client itself (except for the message that it publishes), it only tells how the message from the client can be sent to and from the service.
REST is short for REpresentational State Transfer. It does not define rules for creating a message and sending it to the server. You can do this with the simple HTTP protocol. That REST indicates how the client and server manage their states so that they become useful for client-server interaction. Here you focus more on designing the states of clients and servers, rather than on the messages that they exchange.
source share