I\'ve just learned that a decimal somehow remembers how much trailaing zero\'s were needed to store a number. With other words: it remembers the size of the fraction.
just apply the Format specifier zero and will remove the trailing zeros:
string test = (1.23M * 100M).ToString("0"); //prints 123. string test2 = 123.450M.ToString(".00"); //prints 123.45. string test3 = 123.450M.ToString().Trim('0');