Boxing occurs when you store a value type in an object reference, and a string is not a value type
In your example, boxing doesn't occur. Though if you're not sure, simply do
if(myObject.Equals("HELLO"))
{
//...
}
that way, you're always safe. '==' is a hardcoded overloaded operator for strings, it normally does a reference (instance) compare. if myObject is a string, equals is overloaded in the string object and will do a value compare with whatever you pass in