Did you know that the String.Concat is really optimized (fast)? I've always seen it as an equivialent of StringBuilder, but as it turns out, String.Concat can be the better choice in many areas. As a recap of earlier blog posts, if you are going to concatenate two strings, you might as well use the add operator ( var result = "Hello " + "World"; ). However, if you want to build a larger string, you might want to consider one of the two constructs discussed in this post. My recommendation is to use String.Concat for average-sized strings, and StringBuilder for larger strings that are built over time: // String.Concat logger.LogError(String.Concat( "Error doing this and that for ", customerId, ", doing action ", action, " with properties ", properties )); // StringBuilder StringBuilder buffer = new StringBuilder(); string line = null; while((line = stream.ReadLine()) != null) { if(buffer.Length