Usando XMLreader y xpath en un archivo xml grande C #

Así que tengo este archivo XML bastante grande que necesito analizar y no quiero cargar todo el archivo en la memoria. El XML se ve algo como esto:

          

Lo que quiero hacer es ir a través de cada nodo llamado nodo y ver si el atributo coincide con mi criterio de búsqueda. Y quiero hacerlo usando xpath. Encontré Parse xml en c #: combine xmlreader y linq a xml, lo que me ayuda a aislar el nodo en cuestión. Pero no puedo usar xpath en el nodo padre. Supongo que tendré que crear un xmldocument y cargar el lector, pero no puedo hacer que funcione como quiero.

Los atributos necesitan comillas dobles alrededor del valor (childattrib). Intenta seguir, que es una combinación de xml reader y xml linq. Al leer archivos XML grandes siempre use xmlreader.

 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml; using System.Xml.Linq; namespace ConsoleApplication74 { class Program { const string FILENAME = @"c:\temp\test.xml"; static void Main(string[] args) { XmlReader reader = XmlReader.Create(FILENAME); while (!reader.EOF) { if (reader.Name != "node") { reader.ReadToFollowing("node"); } if (!reader.EOF) { XElement node = (XElement)XElement.ReadFrom(reader); if ((Boolean)node.Attribute("attrib")) { } } } } } }