using System.Collections;
using System.Collections.Generic;
using System.Data.DataSetExtensions;
public static void Main()
string input = @"<level1><level2><level3><level4><level5><level6 leveltype=""thislevel""><level7 leveltype=""onemorelevel""><level8></level8></level7></level6></level5></level4></level3></level2></level1>";
XElement element = XElement.Parse(input);
var searchnode = element.Descendants("level6").Where(z => (string)z.Attribute("leveltype") == "thislevel").SingleOrDefault();
searchnode.Parent.Dump();