SOAP is a heavyweight XML based data transfer protocol that sits atop HTTP (usually). There are multiple variations of the implementation, which, like current RESTful implementations, makes things difficult to deal with sometimes. Since SOAP had extra "junk" (WSDL's and such) many people favored POX (plain old XML) over HTTP instead, which was similar but easier to implement.
While SOAP and POX can both be RESTful, the current trend is towards lightweight REST interfaces that use basic HTTP methods to interact with the services.
True REST uses POST, DELETE, PUT and GET methods for the actions but since browsers (and AJAX clients) don't really do DELETE and PUT right now, you end up with hybrid approaches, like overloaded POST or a hidden _method parameter.
RESTful services tend to have a certain simple elegance and are easily tested with simple programs like cURL and wget since they are generally designed to be lightweight. This makes them favorable for developers too since you don't have a bunch of libraries to integrate with systems, just basic HTTP abilities.