Vamos lá então,

Uma coisa que gostei no inicio dos meus trabalhos com asp.net e c# foi ter me deparado com o ganho der performance,
já que quase tudo nessa linguagem tem mil maneiras de si ser feito, cabendo ao programador decidir qual se aplica melhor a cada caso.

Agora colocaremos em foco o string.Compare().

Sintaxe do comando:

string.compare("primeiraString", "segundaString");

Esta função retorna 1 se a condição for verdadeira e 0 caso a mesma seja falsa, antes de se utilizar qualquer
Tipo de metodo de testes deve se entender completamente seu funcionamento.

Sabendo que compare faz a seguinte questão ao sistema "A primeira string é diferente da segunda?",
isto ocasiona em que a função retornara 1 caso as duas tenham diferença.

trazendo um ganho de performance e de utilização do potencial da linguagem, tentei pensar num exemplo bem simples da utilização do comando.

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;

public class exemploAutenticacao
{
    public bool autenticar(string usuario)
    {
        if (string.Compare(usuario, obterUsuario()) == 0)
        {
            //Executar bloco se as strings forem iguais utilizandoo o ganho de performance do compare
        }

        if (usuario == obterUsuario())
        {
            //Validação sem a utilização do comando CompareOrdinal
        }
    }

}


Espero que seja de utilidade o comando string.Compare().

Até a próxima!