Using String.Format how can i ensure all numbers have commas after every 3 digits eg 23000 = \"23,000\" and that 0 returns \"0\".
String.Format(\"{0:n}\", 0); //give
If your current culture seting uses commas as thousands separator, you can just format it as a number with zero decimals:
String.Format("{0:N0}", 0)
Or:
0.ToString("N0")