Carcinogenesis is an evolutionary process that establishes the 'hallmarks of cancer' by natural selection of cell clones that have acquired advantageous heritable characteristics. Evolutionary adaptation has also been proposed as a mechanism that promotes drug resistance during systemic cancer therapy. This review summarises the evidence for the evolution of resistance to cytotoxic and targeted anti-cancer drugs according to Darwinian models and highlights the roles of genomic instability and high intra-tumour genetic heterogeneity as major accelerators of this evolutionary process. Clinical implications and strategies that may prevent the evolution of resistance or target the origins of genetic heterogeneity are discussed. New technologies to measure intra-tumour heterogeneity and translational research on serial biopsies of cancer lesions during and after therapeutic intervention are identified as key areas to further the understanding of determinants and mechanisms of the evolution of drug resistance.