An energy system is a crucial component in fulfilling the energy requirements of a given industrial process. If not designed appropriately, energy systems may not be able to perform designated operations in an optimised manner. Mathematical optimisation approaches have had a long history in addressing the synthesis of energy systems. Mathematical optimisation approaches are part of a larger domain known as process systems engineering (PSE). The main objective of this review is to provide a state-of-the-art overview of the mathematical optimisation approaches developed, particularly those developed for synthesis of energy systems, including the handling of uncertainty and the optimisation of multiple objectives. Subsequently, the synthesis of energy systems is further discussed on specific areas such as reliability, operability, flexibility and retrofit and eco-industrial parks. Following this, an overall analysis of the contributions in these areas is provided. Finally, future research directions are identified at the end of this review.