null/Nothingや空の文字列(長さ0の文字列)が含まれていても並べ替えることができます。 null/Nothingは、空の文字列を含む他のどの文字列よりも小さいと扱われます。 つまり、空の文字列を含めて大小関係を並べると、「null/Nothing < 空の文字列 < 1文字以上の文字列」の順となります。
文字列型におけるnull、空の文字列のソート順序
      using System;
class Sample {
  static void Main()
  {
    var arr = new string[] {
      "a", "aa", "ab", "b", null, ""
    };
    Array.Sort(arr);
    foreach (var val in arr) {
      Console.WriteLine(val ?? "(null)");
    }
  }
}
       
      実行結果
      (null) a aa ab b