Because strings are immutable, s = s + c in a loop copies the whole string each time and can turn an O(n) task into O(n²). StringBuilder edits one buffer in place, so building, reversing or inserting into text stays fast. Use it whenever you build a string piece by piece, like collecting output in a loop. For a single join of two or three strings, plain + is fine.