Столкнулся с этим пару дней назад (точнее мне нужно было не по атрибутам, а по xpath), нагуглил и заюзал либу "Html Agility Pack"
Вот как настраивал всё:
[УСТАНОВКА]
1) скачать
http://htmlagilitypack.codeplex.com/
2) скопировать "HtmlAgilityPack.dll" (4.0) в "ExternalAssemblies"
3) добавить в "HtmlAgilityPack.dll", "System.Xml" (4.0)
4) Добавить в директивы using:
using HtmlAgilityPack;
using System.Web;
using System.Xml;
[ИСПОЛЬЗОВАНИЕ]
tmlAgilityPack.HtmlDocument doc = new HtmlAgilityPack.HtmlDocument(); // создание объекта
doc.LoadHtml(resultget); // грузим DOM текст (из переменной resultget) в объект doc
var coll = doc.DocumentNode.SelectNodes("//h2").Count; // коллекция элементов
vat UrlImage = doc.DocumentNode.SelectSingleNode("//title").InnerText; // один элемент
[НЮАНС]
Если объект по xpath не находится, то идёт возврат null, поэтому нужно обвёртывать в try/catch
[ДОП ИНФА]
http://kronus.me/2011/04/введение-в-xpath-на-примере-простого-парсе/
Гугл: "site:zennolab.com c# htmlagilitypack"