Good news: WCF programmers no longer need to suffer REST envy in relation to their brethren in the wider development world. .NET developers will now be able to easily achieve both RPC and REST type services in WCF. Let's clear up some of those acronyms:
WCF, for the uninitiated, stands for Windows Communication Foundation, a feature of .NET that simplifies much of the mechanics and "plumbing" of programming service-oriented interfaces, particularly web services. The default WCF paradigm has in the past been RPC-style, which stands for "Remote Procedure Call"--meaning that calling the service is a lot like calling any other function; the function just happens to live in a remote location.
REST stands for Representational State Transfer. The World Wide Web, actually, works according to the principles of REST; REST is not only a paradigm for web services, though many have applied REST to the web services problem in recent years. A RESTful web service can be addressed over http using a normal URI, like any web page. The URI identifies which "resource" is needed and passes arguments to the resource through the parts of the URI (usually separated by slashes).
REST vs. RPC is one of those big debates that programmers like to argue about. (Try searching for 'rest vs rpc' if you'd like to dive down that rabbit hole for awhile.) A simple way to think about it, though, is that many people consider RESTful web services to be easier to understand and program against, which makes them attractive when you are publishing an API to be used by many people and/or external parties. RPC-style web services, on the other hand, with the
WS-* specifications, are often considered more complex, but also more robust, flexible, and potentially, more secure.
.NET programmers have always been able to program REST-style services in WCF, but it required some extra design and coding effort. Recently, Microsoft has been releasing "previews" of the
WCF REST Starter Kit on Codeplex. Be sure to also check out Microsoft's "
REST in WCF" MSDN resources page.
Happy RESTing!