Lots of good suggestions so far, but it's hard to actually know unless you define your User Requirements more precisely.
In my experience, the killer criteria are "What does this ticket management system need to integrate with?" and "How much effort / kludge are you prepared to go to to make the integration happen?"
For example, is your ticket system going to drive employee timesheets -> payroll? Is it going to integrate with an inventory management system? How about configuration management, is the ticket system going to interact with the configuration of your [and/or your customers'] enterprise firewalls or more excitingly still your [and/or your customers'] ERP behemoth Change/Configuration Management System?
Where are tickets coming from - only input by trained operators? Can end-users generate tickets for themselves? Does your [and/or your customers'] SNMP trap engine automatically generate tickets? Your Building Management System?
As an Illustration, a couple of people have recommend ManageEngine, and it's a pretty good product, but it couldn't be used at a place I worked because it has no native integration with SAP, and since SAP was the finance and inventory and treasury and HR and payroll and engineering and ..., ManageEngine was out.