String - UrlDecode

Converts a string that has been encoded for transmission in a URL into a decoded string.

Try it

public static void Main()
{
    string urlString = "http%3a%2f%2ftest%23+space+123%2ftext%3fvar%3dval%26another%3dtwo";
	
	//C# Extension Method: String - UrlDecode
    var output = urlString.UrlDecode();

    Console.WriteLine(output);
}

View Source
using System;
using System.Text;
using System.Web;

public static partial class Extensions
{
    /// <summary>
    ///     Converts a string that has been encoded for transmission in a URL into a decoded string.
    /// </summary>
    /// <param name="str">The string to decode.</param>
    /// <returns>A decoded string.</returns>
    public static String UrlDecode(this String str)
    {
        return HttpUtility.UrlDecode(str);
    }

    /// <summary>
    ///     Converts a URL-encoded string into a decoded string, using the specified encoding object.
    /// </summary>
    /// <param name="str">The string to decode.</param>
    /// <param name="e">The  that specifies the decoding scheme.</param>
    /// <returns>A decoded string.</returns>
    public static String UrlDecode(this String str, Encoding e)
    {
        return HttpUtility.UrlDecode(str, e);
    }
}