There are lot of other ways to do this,
When you call a string comparison method such as String.Compare, String.Equals, or String.IndexOf, you should always call an overload that includes a parameter of type StringComparison so that you can specify the type of comparison that the method performs.
Overloads:
CurrentCulture, CurrentCultureIgnoreCase, InvariantCulture, InvariantCultureIgnoreCase, Ordinal and OrdinalIgnoreCase
For more information http://msdn.microsoft.com/en-us/library/system.stringcomparison(v=vs.110).aspx
Use comparisons with StringComparison.Ordinal or StringComparison.OrdinalIgnoreCase for better performance and as your safe default for culture-agnostic string matching,
You can use String.ToUpper, String.ToLower , but this will allocate memory for string.
This is the best way to do,
string first = "StringCompaRison";
string second = "stringcoMparisoN";
if(first.Equals(second,StringComparison.OrdinalIgnoreCase)
{
Console.WriteLine("Equal ");
}
else
Console.WriteLine("Not Equal");