Unfortunately, all four answers found so far are badly incomplete, because they don't take into account the critically important technique used by .NET — string interning. The implications of string interning are most relevant to the string member copying.
Please see: