Originariamente inviato da Legnetto
Quando usi una stringa normale ogni volta che aggiungi o togli qualcosa, viene creata una nuova istanza della stessa, la classe stringbuilder è nata proprio per ovviare a questo problema.
Io lo uso moltissimo per creare quando mi serve l'html di una pagina.
Ciao
infatti, dal reference:

codice:
L'oggetto String non è modificabile. 
Ogni volta che si utilizza uno dei metodi 
nella classe System.String si crea un nuovo 
oggetto Stringa in memoria, che richiede 
una nuova allocazione di spazio. 
In situazioni nelle quali è 
necessario modificare ripetutamente 
una stringa, la creazione di un nuovo 
oggetto String può causare un overhead. 
Per modificare una stringa senza creare 
un nuovo oggetto si può utilizzare la classe System.Text.StringBuilder. Utilizzando 
ad esempio la classe StringBuilder è 
possibile migliorare le prestazioni 
in caso di concatenamento di più stringhe 
in un ciclo.