using System.Collections;
using System.Collections.Generic;
using System.Data.DataSetExtensions;
using System.Text.RegularExpressions;
using System.Xml.Serialization;
using System.Globalization;
public static void Main(string[] args)
<level1 id=""NotNeeded"">
<level3 id=""Needed"">I need this one</level3>
<level3 id=""NotNeeded"">I don't need this one</level3>
<level2 id=""NotNeeded"">
<level3 id=""NotNeeded"">I don't need this one</level3>
XDocument doc = XDocument.Parse(input);
.Where(x=>x.Attribute("id") != null && x.Attribute("id").Value == "NotNeeded")