CultureInfo в C#
Класс CultureInfo задаёт разделитель целой и дробной части, символ
валюты и правила календаря. Один и тот же double в строке
выглядит по-разному: в en-US число 1.5 запишется как
"1.5", в ru-RU - как "1,5".
Культура InvariantCulture фиксирует точку как десятичный разделитель. Это удобно для логов и JSON. Запись не зависит от языка системы:
using System.Globalization;
double v = 1.5;
Console.WriteLine(v.ToString(CultureInfo.InvariantCulture));
При разборе строку читают тем же правилом, которым её записали.
Культуру передают отдельным аргументом в Parse или TryParse,
иначе возьмётся язык системы. У Parse это второй аргумент,
у TryParse она стоит перед out-параметром.
Сравните вывод числа 2.75 в культурах en-US и ru-RU.
Разберите строку "3,5" по правилам ru-RU и выведите число в консоль.