“was just idly thinking today about Web Services. You know, the big hype item that some folks hoped would break through the IT economic doldrums after dotbomb and 9/11. There were articles, magazines, conferences, and the normal hoopla, all boiling around this old concept wrapped in new clothes.
The old concept, of course, is RPC -- Remote Procedure Call. A concept, by the way, that never really succeeded in a huge way. Apparently the industry decided that we needed to take this questionably successful technique and promote it to the whole web at large.” 
Does anyone else get tired of hearing this ignorant statement? I suppose one could argue that SOAP in its original incarnation was just XML RPC with a few nifty gadgets. However, the direction SOAP is heading today (or at least where the leaders in the industry want to take it) is toward a much more powerful and flexible document literal approach, not an XML-RPC approach. Thus, web services become a standardized rich messaging stack... something that XML RPC never was. XML RPC was about providing a simple method of remote object invocation, web services are about providing a rich messaging layer. Although at first glance you might say, “what's the difference?“ That would merely show how little you know about XML RPC and the state of web services today. In fact, even if you aren't going to take advantage of a document literal approach, the extension mechanisms and the WS-* specs built on top of them alone enable the messaging stack to be a better RMI mechanism than XML RPC ever was.
For example, let us say that you wanted to provide a notion of identity with you XML RPC messages. How would you do this in a fashion that all callers would understand? How would you extend your message's contract in a standardized way to include this information? How would you add transactional context? How would you add this transactional context in a standardized way? Of course, you can't really do even these simple things with XML RPC. However, there are very clean, standard ways to do these things (and solve much more complex problems) with the plumbing provided by web services. The best part about it is that also unlike XML RPC, this stuff is being integrated at the platform and framework levels on both the MS and non-MS side so that developers can no only take advantage of it without having to understand all the nitty-gritty details, but also gain maximal benefits with minimal code.
 Robert C. Martin. http://www.artima.com/weblogs/viewpost.jsp?thread=27269