Last  night I just made one of those HTML screenscaper-style apps - my downstairs neighbor is an artist and has this homepage with his stuff on. HTML often being extremely well deformed can be a nasty cat to swing, especially if you're locked inside a Phone 7 room. HTML Agility Pack saved me from the embarrasment of writing the exact and correct regular expression, taking care of with and without quotes, spaces etc - which is enough for me to be a fan. Getting the list of images with titles was something in the area of:

public class GalleryItemViewModel
{
    public string Path { getset; }
    public string Title { getset; }
}
HtmlWeb.LoadAsync(baseAddress + "/kilp.html", (s, args) =>
{
    var result = args.Document.DocumentNode.Descendants("img").Select(image =>
      new GalleryItemViewModel
        {
          Path = baseAddress + image.GetAttributeValue("src"string.Empty),
          Title = image.GetAttributeValue("title"string.Empty)
        }).ToList();
 
    this.Dispatcher.BeginInvoke(() =>
    {
      model.Items.Clear();
      result.ForEach(givm => model.Items.Add(givm));
      this.DataContext = model;
    });
});

Neat. For me at least.