Tuberculosis continues to afflict millions of people and causes over a million deaths a year worldwide. Multi-drug resistance is also on the rise, causing concern among public-health experts. This talk will give an overview of my work on modeling tuberculosis at various scales. On the cellular side I will describe models of the metabolism of M. tuberculosis, where insights from duality led to a consistent analysis of existing models, a systematic method for reconciling discrepant models, and the identification of putative drug targets. On the population side I will describe models of strain evolution, where a new metric combined with an optimization-based approach resulted in an accurate classification of complex infections as originating from mutation or mixed infection, as well as the identification of the strains composing these complex infections.