Many times I need to get the segments of an Url, and I’m not only talking about the query string.

If we search around the web we can see a lot of ideas for parsing URLs, most using regular expressions.
The fact is that .net Framework gives us a much better tool: System.Uri

So if we have an Url that we need to strip down we can write:

public void MyMethod(string url)
	System.Uri path = new Uri(url);
	var protocol = path.Scheme;
	var host = path.Host;
	// See the System.Uri documentation for the available methods

Note that this object is the same that you may be familiar with and is used when we get the current HttpContext url: