When debugging in ASP.NET MVC, I don\'t see a difference between:
http://mysite.com?q=hi,bye
and
http://mysite.com?q=hi%2Cb
This is really browser dependent. The browser takes the HTML form and decides how to build the URL based on the form's inputs.
If you're using a really old (or poorly programmed) browser, it may not encode the comma. If you adhere to RFC standards, it really should be encoded.
If you want to prevent the comma from being encoded for all browsers, you would have to use JavaScript and build the URL yourself.
In any case, it shouldn't matter, because you should be decoding the querystring parameters anyway, and the result will be the same.