For a while now there has been a community groundswell of people asking for a sactioned implementation of XPathReader. Both DonXML and Mark Fussell have posted about it. (And asked for a petition to get it implemented.)
Well, I just saw this come through my MSDN Downloads feed, so I'm guessing their petition idea worked.
XPath Reader
The XPathReader provides the ability to filter and process large XML documents in an efficient manner using an XPath-aware XmlReader. With the XPathReader, one can sequentially process a large document and extract an identified sub-tree matched by an XPath expression
Download it here.