If you want to operate a growing string, please don't use the String class anymore. Why is it to say this? Let's take a look at the working principle of two classes. The String class is a traditional way of modifying a string that does not mean that you can add a string to another string. But under the .NET framework, this operation is not a way. Because the system first writes two strings into memory, then delete the original String object, then create a String object and read the data in the memory to the object. This is going to go, it takes a lot of time. The StringBuilder class under the namespace using System.Text Namespace is not the case. It provides the Append method that can make a string to modify, simple and direct in the original object. Of course, in general, you can't assume the difference in efficiency, but if you want to add a lot of add actions to a string, the time and String class spending with the StringBuilder class are not an order of magnitude. Here is an example, you try: Imports SystemImports System.TextNamespace StringBuilderSample Class clsStrBuilder Shared Sub Main () Dim i As Integer Dim startTime As DateTime Dim stopTime As DateTime 'String class with the connection string Console.WriteLine ( "String Class ") DIM STR AS STRING = String.empty StartTime = DATETIME.NOW Console.writeline (" Start Time: "& StartTime.to 0 To 99999 Str & = I.toString () Next I stopTime = DateTime.Now Console.WriteLine (( "end time:" & stopTime.ToString ())) 'to connect with StringBuilder class string Console.WriteLine ( "StringBuilder class") Dim builder As New StringBuilder () startTime = DateTime .Now console.writeline (("Start Time:" & StartTime.to 99999 Builder.Append (i.tostring ()) Next I stoptime = DateTime.now console.writeline "End Time:" & StopTime.toString ()) End Sub End Classend Namespace