I was just participating in this question:
http://stackoverflow.com/questions/436211/is-everything-in-c-an-object
And one poster (in comments of accepted answer) seemed to think that performing a method call on a value type resulted in boxing. He pointed me to this article which doesn't exactly specify the use case we're describing.
I'm not one to trust a single source so I just wanted to get further feedback on the question. My intuition is that there is no boxing but my intuition does suck. :D
To further elaborate:
The example I used was:
int x = 5;
string s = x.ToString(); // boxing??
UPDATE:
Boxing does not occur if the struct in question overrides the method inherited from the object as the accepted answer here states.
However if the struct doesn't override the method a "constrain" IL command is executed prior to a callvirt. According to the documentation this results in boxing:
If thisType is a value type and thisType does not implement method then ptr is dereferenced, boxed, and passed as the 'this' pointer to the callvirt method instruction.