I'm confused: you describe a Class with three variables; one is a string. Then you talk about a Method. The variables' scope will depend on where they are created: in the Class' scope, or in a method in the Class' scope.
Strings are a special case: every one you create through defining at design-time/code-time, or at run-time, is interned
: put in a special CLR table called the "intern pool." The reason for that is to make all strings with the same content have only one reference point, so look-up, and comparison, can be very fast.
Interned strings become part of the Assembly itself, and are not garbage collected.
In general it would be an exceptional use case that would need for the programmer to directly manipulate what is in the intern pool, or the interned status of a given string in your application.
In most cases programs that create too many strings (by concatenation, for example) can be re-factored to use the 'StringBuilder object.