なお、C#・VB.NETなどオーバーロードされた演算子を使用できる言語では、Substractメソッドを呼び出す代わりに減算演算子を使うことも出来ます。 結果はSubstractメソッドを使う場合と同じです。

減算演算子を使って2つのDateTime/DateTimeOffsetの時間間隔を求める
using System;

class Sample {
  static void Main()
  {
    // DateTime同士の減算
    var a = new DateTime(2013, 4, 5, 15, 0, 0);
    var b = new DateTime(2013, 4, 3, 8, 30, 0);

    Console.WriteLine(a - b); // == a.Subtract(b)

    // DateTimeOffset同士の減算
    var c = new DateTimeOffset(2013, 4, 5, 15, 0, 0, TimeSpan.Zero);
    var d = new DateTimeOffset(2013, 4, 3, 8, 30, 0, TimeSpan.Zero);

    Console.WriteLine(c - d); // == c.Subtract(d)
  }
}
実行結果
2.06:30:00
2.06:30:00