C#、VB.NETでは等価演算子・不等価演算子を用いることで文字列同士の比較が行えます。 等価演算子の動作はEqualsメソッドと同等です。 つまりC#、VB.NETでのstring同士の等価演算子の結果は、String.Equals(a, b)と同じ動作となります。 不等価演算子は、その結果を否定(反転)したものとなります。

等価演算子・不等価演算子を使って文字列同士を比較する
using System;

class Sample {
  static void Main()
  {
    string s1 = "foo";
    string s2 = "bar";
    string s3 = "foo";

    Console.WriteLine("{0} == {1}: {2}", s1, s2, s1 == s2);
    Console.WriteLine("{0} != {1}: {2}", s1, s2, s1 != s2);
    Console.WriteLine("{0} == {1}: {2}", s1, s3, s1 == s3);
    Console.WriteLine("{0} != {1}: {2}", s1, s3, s1 != s3);
  }
}
実行結果
foo == bar: False
foo != bar: True
foo == foo: True
foo != foo: False

当然ながら、等価演算子・不等価演算子による比較の場合は、カルチャを無視したり大文字小文字を無視したりといった文字列比較時のオプション(StringComparison)を指定することはできません。 文字列比較時のオプションを指定する必要がある場合はEqualsメソッドを用います。

文字列の比較ではなく、文字列変数の参照の比較を行いたい場合、つまり2つの文字列変数が同一の文字列インスタンスを参照しているかどうかを調べるには、Object.ReferenceEqualsメソッドを使うことができます。 これについて詳しくは文字列とStringクラス §.参照と等価演算子で解説しています。