Does the following work when used in comments to refer to a specific user (say, xuser):
@xuser: blah blah blah...
Or should I just use separate punctuations?:
@xuser : blah blah blah...
Yes, that works. Since a colon is not a valid character in a username, the reply-to username in your example is considered to end on the "r".
Note that while a period is valid in usernames,
Thanks, @xuser. That was helpful.
will also work, because a trailing period is removed from the mention (to accomodate this precise scenario). And since July 2014, multiple trailing dots are removed too.
You don't need to seperate any puntuation that follows the user's name.
See the FAQ question How do comment @replies work?, specifically point 12 of the answer.