>I tested my code and get no problem having this class named String. But, just in case (so that you and Thomas don't tell me some day "I told you so :)) I may change the name to something very unique like MyString <g>.
I also have a string class. Its file name is named String.vb but the class name is named StringFunction. I do not understand how you succeeded to name the class String. That should give you a "Keyword is not valid as an identifier".
Wherever I have a class name that is a reserved word, I simply add the word Function after. Another example if a file class. I named the file File.vb but the class name is FileFunction.