Текстовые значения интерпретируются XLinq как XText. поэтому вы можете легко проверить, относится ли узел к типу XText или, проверив NodeType, см .:
// get all text nodes
var textNodes = document.DescendantNodes()
.Where(x => x.NodeType == XmlNodeType.Text);
Однако меня поражает, что вы хотите найти только тот фрагмент текста, который кажется немного одиноким с именем textvalue. Нет реального способа узнать эту действительную, но необычную вещь. Вы можете либо проверить, является ли родительский элемент именем name, либо сам textNode один, либо не видеть:
// get 'lost' textnodes
var lastTextNodes = document.DescendantNodes()
.Where(x => x.NodeType == XmlNodeType.Text)
.Where(x => x.Parent.Nodes().Count() > 1);
edit только один дополнительный комментарий, я вижу, что многие люди утверждают, что этот XML недействителен. Я должен не согласиться с этим. Хотя это не красиво, но все же действует в соответствии с моими знаниями (и валидаторы)