Monte Carlo (MC) represents a powerful simulation tool that can be usefully applied to calculating thermodynamic data. However, such codes are normally bespoke for a particular problem and not widely applicable. In this paper, we report a new flexible and versatile MC code called DL_MONTE, which builds on the highly successful DL_POLY molecular dynamics code to allow the treatment of polymers, minerals, semiconductors and metals in a range of applications on both workstations and highly parallel supercomputers. In addition, to describe its features, we used a recent work to model the phase diagrams of mixed metal oxide nanoparticles using MgO/MnO as an illustration, adsorption of water at the MgO surface and, finally, the adsorption isotherms of CO 2 in different microporous zeolites. The results demonstrate the flexibility of the methodology and how semi-grand and grand canonical MC can be readily applied.