Разница между методами Compare и Equals при сравнении строк в C# заключается в том, как они определяют равенство строк. 1
Метод Compare определяет равенство сравниваемых строк на основании порядка их сортировки. 1 Если сравнивать строки с учётом культурной среды, то они могут оказаться одинаковыми по порядку сортировки, но не равными по существу. 1 Метод Compare возвращает отрицательное значение, если первая строка меньше второй, положительное — если первая строка больше второй, и нуль — если обе строки равны. 1
Метод Equals, в свою очередь, по умолчанию определяет равенство строк, исходя из порядковых значений символов и без учёта культурной среды. 1 Таким образом, по умолчанию обе строки сравниваются в этом методе на абсолютное, посимвольное равенство. 1 Метод Equals возвращает логическое значение true, если строки совпадают, и false — если нет. 5
Таким образом, метод Compare больше подходит для сравнения строк на порядок, а Equals — для определения их равенства.