Конкретно в чем разница между
String.Compare(String, String, StringComparison)
иString.Compare(String, String, CultureInfo, CompareOptions)
Мне кажется, что второй предлагает больше возможностей(сравнение с использованием любой культуры, а не только текущей или инвариантной, игнорировать специальные символы, игнорируйте ширину катакан (!!) и т. д.) , чем первый . Оба были представлены в .NET 2.0, поэтому я думаю, что это не может быть вопросом обратной совместимости.
Так в чем же разница и когда следует использовать первый, а когда второй?
Я просмотрел этот пости эту статью, но думаю, что они касаются немного разных вопросов.