なお、DateTimeにはToString以外にも文字列化を行う次のようなメソッドが用意されています。 いずれも、標準の書式指定子を指定してToStringメソッドを呼び出した場合と同じです。

DateTimeの文字列化を行うメソッド
メソッド 得られる文字列 等価な書式指定子
ToLongDateString 長い日付の形式 D
ToLongTimeString 長い時刻の形式 T
ToShortDateString 短い日付の形式 d
ToShortTimeString 短い時刻の形式 t

これらのメソッドで使用される書式はローカライズされる書式であるため、得られる文字列は実行環境の言語設定によって異なります。

定義済みの書式でDateTimeを文字列に変換する
using System;

class Sample {
  static void Main()
  {
    var now = DateTime.Now;

    Console.WriteLine("{0} {1}", now.ToString("D"), now.ToLongDateString());  // 長い日付の形式
    Console.WriteLine("{0} {1}", now.ToString("T"), now.ToLongTimeString());  // 長い時刻の形式
    Console.WriteLine("{0} {1}", now.ToString("d"), now.ToShortDateString()); // 短い日付の形式
    Console.WriteLine("{0} {1}", now.ToString("t"), now.ToShortTimeString()); // 短い時刻の形式
  }
}
ja-JPでの実行結果例
2013年4月1日 2013年4月1日
15:00:30 15:00:30
2013/04/01 2013/04/01
15:00 15:00

DateTimeOffsetにはこういったメソッドは用意されていないため、ToStringメソッドと書式指定子を組み合わせて文字列化する必要があります。