I was working on a project for a client who was developing a web service to load data from an SQL Server database onto a Windows CE device. The project was already well under way before I was asked to do some work on it. The web service was easy enough to get running, but because of the way xml web services are implemented, it required a huge amount of bandwidth to send even a small amount of data. And a normal download could be thousands of records.
After much Googling and not a few failed attempts, I finally found a way to compress the data sent to and from a Windows CE device.