Is REST or SOAP a better approach to doing Web Services?

I built one of the first SOAP servers, including code generation and WSDL generation, from the original spec as it was being developed, I do NOT recommend using SOAP for anything.

The acronym “SOAP” is a lie. It is not Simple, it is not Object-oriented, it defines no Access rules. It is, arguably, a Protocol. It is Don Box’s worst spec ever, and that’s quite a feat, as he’s the man who perpetrated “COM”. There is nothing useful in SOAP that can’t be done with REST for transport, and JSON, XML, or even plain text for data representation.

For transport security, you can use https. For authentication, basic auth. For sessions, there’s cookies. The REST version will be simpler, clearer, run faster, and use less bandwidth. XML-RPC clearly defines the request, response, and error protocols, and there are good libraries for most languages. However, XML is heavier than you need for many tasks.