基数を指定して数値を文字列化するには、Convert.ToStringメソッドを使用します。 引数toBaseに基数を指定すると、その基数で数値を文字列化することができます。 基数には2, 8, 10, 16のいずれかを指定できます。

このメソッドでは0埋め・桁揃えをすることはできないので、そういった目的にはString.PadLeftメソッド等と組み合わせて使用します。 また、基数に16を指定した場合は、09と小文字afが用いられるため、16進数を大文字で表記したい場合はさらにString.ToUpperメソッドを組み合わせる必要があります。

Convert.ToStringとString.PadLeftを使って、基数と桁数を指定して文字列化する
using System;

static class Sample {
  static void Main()
  {
    var n = 123;

    // 基数を指定して値を文字列化
    Console.WriteLine("base =  2: {0}", Convert.ToString(n,  2)); //  2進数表記で数値nを文字列化
    Console.WriteLine("base = 10: {0}", Convert.ToString(n, 10)); // 10進数表記で数値nを文字列化
    Console.WriteLine("base = 16: {0}", Convert.ToString(n, 16)); // 16進数表記で数値nを文字列化
    Console.WriteLine();

    // 基数と桁数を指定して右揃えで値を文字列化
    Console.WriteLine("base =  2: {0}", Convert.ToString(n,  2).PadLeft(8)); // 桁数8・右揃えで数値nを 2進数表記化
    Console.WriteLine("base = 10: {0}", Convert.ToString(n, 10).PadLeft(8)); // 桁数8・右揃えで数値nを10進数表記化
    Console.WriteLine("base = 16: {0}", Convert.ToString(n, 16).PadLeft(8)); // 桁数8・右揃えで数値nを16進数表記化
    Console.WriteLine();

    // 基数と桁数を指定して0埋めして値を文字列化
    Console.WriteLine("base =  2: {0}", Convert.ToString(n,  2).PadLeft(8, '0')); // 桁数8・0埋めして数値nを 2進数表記化
    Console.WriteLine("base = 10: {0}", Convert.ToString(n, 10).PadLeft(8, '0')); // 桁数8・0埋めして数値nを10進数表記化
    Console.WriteLine("base = 16: {0}", Convert.ToString(n, 16).PadLeft(8, '0')); // 桁数8・0埋めして数値nを16進数表記化
    Console.WriteLine();
  }
}
実行結果
base =  2: 1111011
base = 10: 123
base = 16: 7b

base =  2:  1111011
base = 10:      123
base = 16:       7b

base =  2: 01111011
base = 10: 00000123
base = 16: 0000007b