This paper is concerned with the solution of large-scale unit commitment problems. An optimization model has been developed for these problems that incorporates minimum up and down time constraints, demand and reserve constraints, cooling-time dependent startup costs, and time varying shutdown costs, as well as other practical considerations. A solution methodology has been developed for the optimization model that has two unique features. First, computational requirements grow only linearly with the number of units. Second, performance of the algorithm can be shown (rigorously) to actually improve as the number of units increases. With a preliminary computer implementation of the algorithm, we have been able to reliably solve problems with 250 units over 12 (2-hour) time periods, and we expect to be able to easily double these numbers.