文字列からTimeSpanに変換するには、ParseメソッドTryParseメソッドを使うことが出来ます。 また、厳密に書式を指定して文字列からTimeSpanへ変換するには、ParseExactメソッドTryParseExactメソッドを使うことが出来ます。 なお、これらのメソッドはいずれも.NET Framework 4から使用可能になっています。

TimeSpan.TryParse/TryParseExactメソッドで文字列からTimeSpanに変換する
Imports System

Class Sample
  Shared Sub Main()
    Dim arr() As String = New String() { _
      "1.2:34:5.678", _         
      "1:2:34:5.678", _
      "1日2時間34分5秒678", _
      "01日02時間34分05秒678" _
    }

    Console.WriteLine("[TryParse]")

    For Each s As String In arr
      ' TryParseメソッドで変換を試みる
      Dim ts As TimeSpan

      If TimeSpan.TryParse(s, ts) Then
        ' 変換できた場合は結果を表示
        Console.WriteLine("{0} -> {1}", s, ts)
      Else
        Console.WriteLine("{0} -> (invalid format)", s)
      End If
    Next

    Console.WriteLine()

    Console.WriteLine("[TryParseExact]")

    For Each s As String In arr
      ' TryParseExactメソッドで書式を指定して変換を試みる
      Dim formats() As String = New String() { _
        "G", _
        "d'日'h'時間'm'分's'秒'fff" _
      }
      Dim ts As TimeSpan

      If TimeSpan.TryParseExact(s, formats, Nothing, ts)
        ' 変換できた場合は結果を表示
        Console.WriteLine("{0} -> {1}", s, ts)
      Else
        Console.WriteLine("{0} -> (invalid format)", s)
        End If
    Next
  End Sub
End Class
実行結果
[TryParse]
1.2:34:5.678 -> 1.02:34:05.6780000
1:2:34:5.678 -> 1.02:34:05.6780000
1日2時間34分5秒678 -> (invalid format)
01日02時間34分05秒678 -> (invalid format)

[TryParseExact]
1.2:34:5.678 -> (invalid format)
1:2:34:5.678 -> 1.02:34:05.6780000
1日2時間34分5秒678 -> 1.02:34:05.6780000
01日02時間34分05秒678 -> 1.02:34:05.6780000

ToStringメソッドおよびParse*メソッドでは、現在のカルチャの影響を受けるもの(ローカライズされる書式)が存在します。 これらのメソッドと文字列化に関する詳細な動作については日時・文字列の変換と書式でも解説しているので、あわせてご覧ください。