I was curious if someone could outline which types of WCF contract (interface) changes on the server side would break a client trying to send in a message, and why. I believe WCF can handle certain discrepancies, but I'm not sure exactly what you can change safely, and what you can't.
A friend asked a similar question here:
Does adding a method to a WCF ServiceContract break existing clients?
EDIT: As John Saunders pointed out, changing the contract is not usually a good idea, but there are things built in that allow for some version tolerance (ExtensionDataObject, etc.?). I would just like to know how flexible the version tolerance is.
Check out this article on dasBlonde: Versioning WCF Service Contracts
It lists what changes will break existing clients:
This article by Michele explains in more detail how you can design contracts to be more flexible.