.Descendants
получит всех потомков узла, которые соответствуют XName
, другими словами, он обходит дерево, ища все узлы, которые соответствуют этому XName
. Если вы ищете прямой дочерний элемент узла (в вашем случае, root), попробуйте перебрать его .Elements
и захватить те, которые вы хотите - это будут только прямые дочерние элементы.
Если вы знаете, что существует только один дочерний узел с XName
, который вы хотите, вы можете использовать метод .Element(XName)
, чтобы получить только этот элемент.