XmlReader - работает с документом в файловой системе. Используется для чтения большого документа. XmlDocument - выполняет загрузку документа в оперативную память. Предоставляет возможность выполнять Xpath запросы.
XPath представляет язык запросов в XML. Он позволяет выбирать элементы, соответствующие определенному селектору.
3) C помощью System.Xml.LINQ.XDocument
Поддерживает способ взаимодействия с xml через LINQ
Позволяет описать структуру XML, задав большое количество правил и ограничений, которым должен удовлетворять XML документ, чтобы быть правильным (valid). (Описание схемы или контракта).