It only handles {0} and the like. What about escape sequence {{0}} and formatting like {0:dd}. http://msdn.microsoft.com/en-us/library/txafckwd.aspx Normal cases are handles anyway - the regular string.Format is always used.