> 
> **Possible Duplicate:**  
> 
> [Why is String.Concat not optimized to StringBuilder.Append?](https://stackoverflow.com/questions/2177447/why-is-string-concat-not-optimized-to-stringbuilder-append) 
> 
> 
> 

One day I was ranting about a particular Telerik control to a friend of mine. I told him that it took several seconds to generate a controls tree, and after profiling I found out that it is using a string concatenation in a loop instead of a StringBuilder. After rewriting it worked almost instantaneously.

So my friend heard that and seemed to be surprised that the C# compiler didn't do that conversion automatically like the Java compiler does. Reading many of Eric Lippert's answers I realize that this feature didn't make it because it wasn't deemed worthy enough. But if, hypothetically, costs were small to implement it, what rationale would stop one from doing it?