Tuberculosis (TB) continues to afflict millions of people and causes over a million deaths a year worldwide, especially in countries with a high burden of HIV. Multi-drug resistance is also on the rise, causing concern among public-health experts. This talk will give an overview of my work on modelling TB and HIV in South Africa. I will present a Bayesian approach to jointly modelling the TB and HIV epidemics, where a compartmental model allowed us to understand the drivers of the epidemics and compare the effects of TB and HIV interventions. I will also describe a project on TB 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.