public static void Main()
var hex = "49276d206b696c6c696e6720796f757220627261696e206c696b65206120706f69736f6e6f7573206d757368726f6f6d";
var base64 = Convert.ToBase64String(hex.HexToBytes());
Console.WriteLine(base64);
public static class CryptoExtensions
public static byte[] HexToBytes(this String hex)
return Enumerable.Range(0, hex.Length).Where(x => x % 2 == 0).Select(x => Convert.ToByte(hex.Substring(x, 2), 16)).ToArray();