With cancer being the major cause of mortality worldwide, the continued development of safe and efficacious treatments is warranted. A better understanding of the molecular mechanism and genetic basis of tumor initiation and progression, coupled with advances in chemistry, molecular biology and engineering have led to discovery of a wide range of therapeutic agents for cancer therapy. However, multidrug-resistance, which is mainly caused by malfunction of genes, has become a major problem in chemotherapy. To overcome this problem, the simultaneous delivery of genes to cancer cells has been proposed to correct the malfunctioned genes to sensitize the cells to chemotherapeutics. This progress report summarizes key advances in drug and gene delivery with focus on the development of polymers, peptides, liposomes and inorganic materials as nanocarriers for co-delivery of small molecular drugs and macromolecular genes or proteins. In addition, challenges and future perspectives in the design of nanocarriers for the co-delivery of therapeutic drugs and genes are discussed.