A String is a reference type even though it has most of the characteristics of a value type such as being immutable and having == overloaded to compare the text rather than
In a very simple words any value which has a definite size can be treated as a value type.