I use Target Process for managing the entire development process. We're using Scrum as our process, and surfacing bugs within the same tool is a no-brainer. I like that I can identify bugs from changes (product backlog) effectively, and that I can take a bug and convert it to a user story if the scope of the bug justifies it.
It also comes with a helpdesk that allows features and suggestions be fed in.
In my opinion, whatever is handling your development process would ideally handle your bugs too. If the bugs aren't up there and visible as something you need to do before anything else then you don't have control of the quality of your products.
http://www.targetprocess.com/
Requires .Net, ISS, etc.
We have:
Users: 7
Feature requestors: 8
Product owner: 1
Bug reportees: Thousands (anyone from any of the clients where our software is implemented).
Used in the past: Trac, Request Tracker ( http://bestpractical.com/rt/ ), FogBugz.