Identifying biological and behavioural causes of diseases has been one of the central concerns of epidemiology for the past half century. This has led to the development of increasingly sophisticated conceptual and analytical approaches focused on the isolation of single causes of disease states. However, the growing recognition that (i) factors at multiple levels, including biological, behavioural and group levels may influence health and disease, and (ii) that the interrelation among these factors often includes dynamic feedback and changes over time challenges this dominant epidemiological paradigm. Using obesity as an example, we discuss how the adoption of complex systems dynamic models allows us to take into account the causes of disease at multiple levels, reciprocal relations and interrelation between causes that characterize the causation of obesity. We also discuss some of the key difficulties that the discipline faces in incorporating these methods into non-infectious disease epidemiology. We conclude with a discussion of a potential way forward.