Multifunctional nanoparticles can be generated by either combining nanocrystals with different functionalities or combining nanocrystals with functional small molecule cargos through different surface engineering strategies. Four typical coating developed for inorganic nanocrystals are: (1) liposome or micelle encapsulation, (2) mesoporous silica coating, (3) layer by layer assembly and (4) surface conjugation. Abbreviations used in this figure: GNP – gold nanoparticles, MNP – magnetic nanoparticles, QD – quantum dots, UCNP – upconversion nanoparticles, and HfO - hafnium oxide nanoparticles.