Linq to XML довольно хорош для этого.
var details = from detail in document.Descendants("Detail")
select new Detail { Name1 = detail.Element("Name1").Value, Name2 = detail.Element("Name2").Value };
(Предполагается, что вы определили тип с именем Detail, вы вполне можете опустить Detail
и получить анонимный тип.)
Этот код приведет к IEnumarable<Detail>
(или анон. Типу), который вы можете перебрать для своих объектов.