Evolutionary algorithms (EAs) have become competitive solvers of a wide variety of water-resources optimization problems. Genetic programming (GP) has become a leading EA since its inception in 1985. This paper reviews the state-of-the-art of GP and its applications in water-resources systems analysis. A comprehensive knowledge about GP's theory and modeling approach is essential for its successful application in water-resources systems analysis. This review presents variants of GP that have been proven useful in various applications to water resources problems. Several examples of applications of GP in water-resources systems analysis are herein presented. This review reveals GP's capability and superiority compared to other conventional methods, which makes it suitable for solving a wide variety of water-related problems including rainfall-runoff modeling, streamflow sediment prediction, flood prediction and routing, evaporation and evapotranspiration forecasting, reservoir operation, groundwater modeling, water quality modeling, water demand forecasting, and water distribution systems.