Architecture Summary of XML in .NET Framework 

The XML classes in the .NET Framework represent a coherently designed and integrated set of classes that enable you to easily build XML aware applications. The goals outlined in the previous section address real world issues that developers face when using XML: not only to build Web orientated applications, but all the other areas that XML addresses such as a common serialization format, object representation, interoperability and messaging, to name a few.

Stream-Based XML Parsing

The XmlReader class defines provides fast, non-cached, forward-only access to XML data. XmlReader objects are created using the System.Xml.XmlReader.Create method. The XmlReaderSettings class allows you to specify the set of features to enable on the created XmlReader object.

See Reading XML with the XmlReader for more information.

Stream-Based XML Creation

The XmlWriter class provides a non-cached, forward-only means of generating streams or files containing XML data. XmlWriter objects are created using the System.Xml.XmlWriter.Create method. The XmlWriterSettings class allows you to specify the set of features to enable on the created XmlWriter object.

See for Writing XML with the XmlWriter more information.

In-Memory XML Processing

The .NET Framework provides two classes that can be used for processing XML data in-memory.

XPathNavigator Class

The XPathNavigator class offers several editing options and navigation capabilities using a cursor model over XML documents. The XML documents can be contained in an XPathDocument or an XmlDocument object.

XmlDocument Class

The XmlDocument, and its related classes, is based on the W3C Document Object Model (DOM). The DOM provides full-fidelity, such as preserving white space and multiple text nodes. Nodes can be created, inserted, removed, and modified using methods and properties based on the familiar DOM model.

See Also

Other Resources

XML Documents and Data