Ответы Роба и Марка, вероятно, идут в правильном направлении - XmlDocument + пространства имен + XPath могут быть немного болезненными.
Если вы можете использовать .NET 3.5, я предлагаю вместо этого использовать LINQ to XML. Это сделало бы действительно легким:
XDocument doc = XDocument.Load("foo.xml");
XNamespace ns = "bar";
var results = doc.Descendants(ns + "result");
foreach (var result in results)
{
...
}
По моему мнению, LINQ to XML - это превосходный API практически во всех отношениях :) (Я полагаю, что ему не хватает некоторых возможностей, но если у вас есть доступ к .NET 3.5, его определенно стоит попробовать).