Read the thrift protocol whitepaper. That will give you an idea of how it encodes information. In general thrift runs rings around XML for network efficiency.
It's also pretty easy to download, build, and try. I'm not a C# user, so I can't comment on that implementation. -Dan
