One of the most important issues for research on social class inequalities in health are the causes behind such differences. So far, the debate on class inequalities in health has mainly been centred around hypotheses on artefactual and selectional processes. Although most contributors to this branch of research have argued in favour of causal explanations, these have gained very little systematic scrutiny. In this article, several possible causal factors are singled out for empirical testing. The effect of these factors on class differences in physical and mental illness is studied by means of logit regressions. On the basis of these analyses, it is shown that physical working conditions are the prime source of class inequality in physical illness, although economic hardship during upbringing and health related behaviours also contribute. For class inequality in mental illness these three factors plus weak social network are important. In sum, a large part of the class differences in physical as well as mental illness can be understood as a result of systematic differences between classes in living conditions, primarily differences in working conditions.