title: String.Format vs "string" + "string" or StringBuilder?
body: <blockquote>
    <p><strong>Possible Duplicates:</strong><br>
    <a href="https://stackoverflow.com/questions/6785/is-string-format-as-efficient-as-stringbuilder">Is String.Format as efficient as StringBuilder</a><br>
    <a href="https://stackoverflow.com/questions/16432/c-string-output-format-or-concat">C# String output: format or concat?</a>  </p>
  </blockquote>
  
  <p>What is the performance priority and what should be the conditions to prefer each of the following:</p>
  
  <pre><code>String.Format("{0}, {1}", city, state);
  </code></pre>
  
  <p>or</p>
  
  <pre><code>city + ", " + state;
  </code></pre>
  
  <p>or</p>
  
  <pre><code>StringBuilder sb = new StringBuilder();
  sb.Append(city);
  sb.Append(", ");
  sb.Append(state);
  sb.ToString();
  </code></pre>