TimeSpanはIComparableインターフェイスによって大小関係が定義されているため、ソートすることができます。 TimeSpanでは、負から正の方向にTimeSpanの表す時間間隔の短い順(Ticksプロパティの値の小さい順)でソートされます。

Array.Sortを使って複数のTimeSpanをソートする
Imports System

Class Sample
  Shared Sub Main()
    Dim arr() As TimeSpan = New TimeSpan() { _
      New TimeSpan(3, 1, 30, 00), _
      New TimeSpan(-3, 90, 0), _
      New TimeSpan(0, 0, 0, 0, 1500), _
      New TimeSpan(30000000) _
    }

    For Each ts As TimeSpan In arr
      Console.WriteLine(ts)
    Next
    Console.WriteLine()

    ' Array.Sortを使ってTimeSpanをソート
    Console.WriteLine("[Sort]")

    Array.Sort(arr)

    For Each ts As TimeSpan In arr
      Console.WriteLine(ts)
    Next
    Console.WriteLine()
  End Sub
End Class
実行結果
3.01:30:00
-01:30:00
00:00:01.5000000
00:00:03

[Sort]
-01:30:00
00:00:01.5000000
00:00:03
3.01:30:00

ソートについて詳しくは基本型のソートと昇順・降順でのソートをご覧ください。