There seem to be a lot of blog entries at the moment arguing over the relative merits of XML, JSON, YAML, S-Expressions, etc. as a data interchange format, and Web Services, WS-* Services and REST-style as the application protocol implementation. But while various articles make interesting academic points...
Support for all the WS-* standards is built into WCF and doesn't require any complex code to get working, but like all things in the WCF world does require a fair bit of attribution and configuration before it all hangs together. It took me a while to work out exactly which combination of bindings...
In a system with well-known end-points, using WS-Addressing and WS-Security with X509 certificates is a great way to authenticate web services, and ensure that the messages are from the right people and have not been tampered with. The basic setup can be implemented very quickly if you're happy with...