Question: Fetch `href's` and other sort of tags which can have URL's embedded. In short get all the `URL's`from a given web link. There are many ways of fetching `URL's` i.e. Regular Expressions, HtmlAgilityPack, Dcsoup etc... I wanna know which one is best?

Answer: 
Regarding HtmlAgilityPack, here's sample code from their examples:

```
HtmlDocument doc = new HtmlDocument();
doc.Load("file.htm");
foreach(HtmlNode link in doc.DocumentElement.SelectNodes("//a[@href"])
{
    HtmlAttribute att = link["href"];
    att.Value = FixLink(att);
}
doc.Save("file.htm");

```

It grabs all `<a>` elements that have `href` attribute. This example loads document from file, but there is of course possibility to load document from string.
You need to use something like [HtmlAgilityPack](https://htmlagilitypack.codeplex.com/) for parsing HTML documents. You would also need to use XPath to easily parse HTML.

Regex can also be used but using XPath is much more suited for this job.