インスタンスメソッドでも静的メソッドでも結果は同じですが、想定される状況により使い分けることが出来ます。 例えば、静的メソッドのCompareとEqualsを使うと、仮に文字列変数にnull/Nothingが代入されていてもヌル参照を引き起こさずに済みます。 (nullとの比較や、null同士の比較を行っても例外エラーにはなりません)

Stringクラスのインスタンスメソッド・静的メソッドの比較
Imports System

Class Sample
  Shared Sub Main()
    Dim s1 As String = Nothing
    Dim s2 As String = "foo"

    Console.WriteLine(String.Compare(s1, s2)) ' s1がNothingでもエラーにはならない
    Console.WriteLine(s1.CompareTo(s2)) ' s1がNothingであるためNullReferenceExceptionがスローされる
  End Sub
End Class