The [Html Agility Pack] is under MIT license and is an HTML parser written in C# to read/write DOM and supports plain XPATH or XSLT.
HtmlWeb hw = new HtmlWeb(); HtmlDocument doc = hw.Load(/* url */); foreach(HtmlNode link in doc.DocumentNode.SelectNodes("//a[@href]")) { }