In this paper we consider a single machine scheduling problem with two criteria; minimizing both maximum tardiness and the number of tardy jobs. We present both heuristic and branch-and-bound algorithms to find the schedule which minimizes the number of tardy jobs among all schedules having minimal maximum tardiness. Computational results show that problems with up to 40 jobs can be solved in less than one minute of computer time, and solution difficulty tends to increase as the range of due dates increases relative to the total processing time. We extend our results to generate all nondominated schedules for the two criteria. Computational experiments indicate that all non-dominated solutions to problems with 40 jobs can be generated. However, solution difficulty for these problems is highly dependent on problem parameters.