>>535
string xml = "<r><a><b><c><d>1</d><d>2</d></c></b></a></r>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
foreach (XmlNode node in doc.DocumentElement.SelectNodes("a/b/c/d"))
   Console.WriteLine("{0} = {1}", node.Name, node.InnerText);

問題なく拾えてるが……。
ちなみにXmlElement.Valueはnullが返って来ちゃうぞ。