At-A-Glance: XmlReader vs. XPathNavigator vs. XmlDocument

This is a great at-a-glance view of the XML options that .NET makes available to Developers.  [From Aaron Skonnard's article by way of Don Box]

CHOICES
PROS
CONS
XmlTextReader
-Fastest
-Most efficient (memory)
-Extensible
-Forward-only
-Read-only
-Requires manual validation
XmlValidatingReader
-Automatic validation
-Run-time type info
-Relatively fast & efficient
(compared to DOM)
-2 to 3x slower than XmlTextReader
-Forward-only
-Read-only
XmlDocument (DOM)
-Full traversal
-Read/write
-XPath expressions
-2 to 3x slower than XmlTextReader/XmlValidatingReader
-More overhead than XmlTextReader/XmlValidatingReader
XPathNavigator
-Full traversal
-XPath expressions
-XSLT integration
-Extensible
-Read-only
-Not as familiar as DOM
XPathDocument
-Faster than XmlDocument
-Optimized for XPath/XSLT
-Slower than XmlTextReader

Comments are closed.
Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer’s view in any way.