using System.Globalization;
using System.Collections.Generic;
public static void Main()
string[] a = new string[] { "1.250.365,45", "500,56", "500,000,000", "5000", "1.2", "120.12", "120,123.89", "1,789,365.90", "0,2" };
var b = new List<decimal>();
var decimalSeparator = "";
for (var i = item.Length - 2; i > 0 && j < 2; i--, j++)
if (item[i] == ',' || item[i] == '.')
decimalSeparator = item[i].ToString();
NumberFormatInfo nfi = new NumberFormatInfo();
if (decimalSeparator.Length > 0)
nfi.NumberDecimalSeparator = decimalSeparator;
separators = separators.Replace(decimalSeparator, "");
temp = temp.Replace(separators, "");
decimal.TryParse(temp, NumberStyles.Currency, nfi, out decimal bb);
Console.WriteLine(string.Join(" | ", b.ToArray()));