using System.Globalization;
public static void Main()
Decimal localCultureResult1, localCultureResult2, invariantCultureResult1, invariantCultureResult2, specificCultureResult1, specificCultureResult2;
Decimal.TryParse(a, NumberStyles.Any, CultureInfo.CurrentCulture, out localCultureResult1);
Decimal.TryParse(b, NumberStyles.Any, CultureInfo.CurrentCulture, out localCultureResult2);
Decimal.TryParse(a, NumberStyles.Any, CultureInfo.InvariantCulture, out invariantCultureResult1);
Decimal.TryParse(b, NumberStyles.Any, CultureInfo.InvariantCulture, out invariantCultureResult2);
Decimal.TryParse(a, NumberStyles.Any, CultureInfo.CreateSpecificCulture("fr-FR"), out specificCultureResult1);
Decimal.TryParse(b, NumberStyles.Any, CultureInfo.CreateSpecificCulture("fr-FR"), out specificCultureResult2);
Console.WriteLine("Local Culture for 1.23 is " + localCultureResult1);
Console.WriteLine("Local Culture for 1,23 is " + localCultureResult2);
Console.WriteLine("Invariant Culture for 1.23 is " + invariantCultureResult1);
Console.WriteLine("Invariant Culture for 1,23 is " + invariantCultureResult2);
Console.WriteLine("Specific Culture for 1.23 is " + specificCultureResult1);
Console.WriteLine("Specific Culture for 1,23 is " + specificCultureResult2);