With the release of .NET 3.5, Microsoft has included a fun new tool for data serializing. The
DataContractSerializer was introduced as a replacement for the current XmlSerializer class, and is the preferred XML data serializer of developers at ImageSource.
DataContractSerializer class uses opt-in properties for it’s serialization rather than the XmlSerializer class’s opt-out methodology. This means that the programmer must specify what class properties are to included in serialization. It’s also up to the programmer to serialize fields, properties and non-public data.