title: How to build XmlNodes from XmlReader
body: <p>I am parsing a big number of big files and after profiling my bottleneck is:</p>
  
  <pre><code>XmlDocument doc = new XmlDocument();
  doc.Load(filename);
  </code></pre>
  
  <p>This approach was very handy because I could extract nodes like this:</p>
  
  <pre><code>XmlNodeList nodeList = doc.SelectNodes("myXPath");
  </code></pre>
  
  <p>I am switching to XmlReader, but When I find the element I need to extract I am stuck with regards to how to build a XmlNode from it as not too familiar with XmlReader:</p>
  
  <pre><code>XmlReader xmlReader = XmlReader.Create(fileName);
  
  while (xmlReader.Read())
  {
     //keep reading until we see my element
     if (xmlReader.Name.Equals("myElementName") &amp;&amp; (xmlReader.NodeType == XmlNodeType.Element))
     {
         // How do I get the Xml element from the reader here?
     }
  }
  </code></pre>
  
  <p>I'd like to be able to build a <code>List&lt;XmlNode&gt;</code> object. I am on <strong>.NET 2.0</strong>.</p>
  
  <p>Any help appreciated!</p>