Here\'s my problem (for en-US):
Decimal.Parse(\"1,2,3,4\") returns 1234, instead of throwing an InvalidFormatException.
Most Windows application
It's allowing thousands, because the default NumberStyles value used by Decimal.Parse (NumberStyles.Number) includes NumberStyles.AllowThousands.
If you want to disallow the thousands separators, you can just remove that flag, like this:
Decimal.Parse("1,2,3,4", NumberStyles.Number ^ NumberStyles.AllowThousands)
(the above code will throw an InvalidFormatException, which is what you want, right?)