using System.Globalization;
public static double ToDecimal(string str, CultureInfo culture)
return double.Parse(str, NumberStyles.Currency, culture);
public static void Main()
CultureInfo cultureinfo = new CultureInfo("es");
string valstr = val.ToString("C", cultureinfo);
Console.WriteLine(valstr);
double d = (double)ToDecimal(valstr, cultureinfo);
Console.WriteLine(d.ToString());