I found this very good article that answered part of the questions I had on my previous post.
The part that is enlightening regarding WSCF as how despite that it might be less productive than Code-first, might offer better Interop in the long run is:
What? Code-first is interoperable?
Well sure! You generate schema from code, proxies consume schema and generate a representation of the schema for the caller’s platform. Of course the serialized type has to be meaningful to the caller, so a DataSet in .NET though serializable makes a horrible candidate for cross platform interoperability. Aside from this, one of the biggest interoperability issues between platforms has to do with runtime schema support. Schema is a vast standard that has much more capability than many parsers have support for. Thus, interoperability can be an issue whether you begin with schema (contract-first) or when you generate schema from objects (code-first).
Ok, ok, the article is dated 2005, but don’t be too hard on someone who has been doing windows forms and CAB for the past year :-p
Designing Service Contracts with WCF