Call-center (FIG. 1) performance is improved by assigning different service-time objectives (222) to different types of calls or to call queues (21) for different types of calls, and then selecting (212), for an agent (25) who has just become available (200) to handle a call, a waiting call that is farthest along in exceeding its assigned service-time objective. The objectives represent limits on the amount of time that calls should spend waiting for agents before being handled. For example, a video call may need to be serviced within tens of seconds of its arrival, and a voice-only call may need to be serviced within minutes, while e-mail may need a response within hours of its arrival. Relative distance of calls from their assigned service-time objectives is preferably determined by determining (206) the calls' present or anticipated wait times and computing (210) weighted percentages of the assigned service-time objectives that are represented by the present or anticipated wait times. The call with the highest weighted percentage is then selected (212) and assigned (214) to the available agent for handling. The process is repeated each time that any agent becomes available.