日付・時間の新しい順に並べ替えるには、次の例のように並べ替え順序を通常と逆の順序に定義したメソッドを用意してからソートします。 逆順(降順)でのソート方法については基本型のソートと昇順・降順でのソート §.降順でのソートを参照してください。

日付型を日付・時間の新しい順でソートする
using System;

class Sample {
  // DateTimeを通常と逆の順に並べ替えるためのメソッド
  static int CompareDateTimeReverseOrder(DateTime x, DateTime y)
  {
    // 逆順で比較
    return DateTime.Compare(y, x);
    // 次のようにしても同じ
    //return -DateTime.Compare(x, y);
    //return y.CompareTo(x);
  }

  static void Main()
  {
    DateTime[] dateTimeArray = new DateTime[] {
      new DateTime(2000, 1, 1,  0, 0, 0),
      new DateTime(2000, 1, 1, 12, 0, 0),
      new DateTime(2000, 1, 2,  0, 0, 0),
      new DateTime(2000, 2, 1,  0, 0, 0),
      new DateTime(2001, 1, 1,  0, 0, 0),
    };

    // デフォルトの順にソート
    Array.Sort(dateTimeArray);

    Console.WriteLine("default order");
    foreach (DateTime val in dateTimeArray) {
      Console.WriteLine("{0:f}", val);
    }

    // 逆順にソート
    Array.Sort(dateTimeArray, CompareDateTimeReverseOrder);

    Console.WriteLine("reverse order");
    foreach (DateTime val in dateTimeArray) {
      Console.WriteLine("{0:f}", val);
    }
  }
}
実行結果
default order
2000年1月1日 0:00
2000年1月1日 12:00
2000年1月2日 0:00
2000年2月1日 0:00
2001年1月1日 0:00
reverse order
2001年1月1日 0:00
2000年2月1日 0:00
2000年1月2日 0:00
2000年1月1日 12:00
2000年1月1日 0:00