In this post Subodh Pushpak discusses caching in WCF.
There are scenarios where Silverlight client calls WCF (or REST) service for data.
Now, if the data is cached on the WCF layer, the calls can take considerable resources at the server if NOT cached. Keeping that in mind along with the fact that cache is an cross-cutting aspect, and therefore it should be as easy as possible to put Cache wherever required.