Printing hasn’t always been the easiest thing to configure and manage in Terminal Services. As Greg Shields puts it "printing and printer drivers have long been the bane of Terminal Services administrators. The pain of keeping the right drivers on the right servers — while hoping and praying that none of them would cause the dreaded blue screen of death — has kept many an admin awake at night".
Things are different (easier) with Windows Server 2008. With Terminal Services Easy Print (I love that name) print jobs are redirected from the server to the client, avoiding the need to keep lots of different print drivers in sync. It’s obviously not quite that simple; there’s all kinds of other things that need to be handled, for example whether fonts are available on the client that are needed by the print job, or how to communicate device configuration details. The clever bit (well, one of the clever bits) is that most of the issues are handled just by using XPS as the server generated spool file and sending that to the client for printing to any available device.
While this works well for TS, the same technique is applicable to many other distributed printing scenarios, both where you don’t have replicated drivers across machines or when you don’t know when you hit ‘print’ what type of device the job will be routed to.