public static List<string> SplitElemetToListByBoundary(string src, string startString, string stopString) {
string str1 = Regex.Escape(startString);
string str2 = Regex.Escape(stopString);
return Enumerable.ToList<string>(Enumerable.Select<System.Text.RegularExpressions.Match, string>(Enumerable.Cast<System.Text.RegularExpressions.Match>((IEnumerable) Regex.Matches(src, str1 + ".*?" + str2)), (Func<System.Text.RegularExpressions.Match, string>) (s => s.Value.Replace(startString, "").Replace(stopString, ""))));
}
if u`re using webrecuests, you need to take the content of page, extract the links(most useful way - regular expressions) -> put the links to array/list or whatever you want and just take the random like string url = new Random r.Next(0, url_list.lengh);
If it's a webbrowser u can use Document.getelementbytagname and then getattribute method.
On webrequest of course you need to fetch all links and then apply some randomizer.
May be helpfull:
U can split by http to "\"" and then apply .Select(e=> "http" + e ).ToList()