The main purpose of this study is to investigate the importance of programming in the learning and understanding of water distribution networks. This paper presents the implementation of a programming language C# for applications for teaching water distribution networks calculations at both undergraduate and graduate levels. A user's guide is also prepared for the software which includes the theory of hydraulic and optimization calculations. There are many ways to design water distribution networks. Hardy Cross method is very often used for optimization of networks. Thus, Hardy Cross optimization method was preferred in this study. It is a perfect study to implement as an educational tool at undergraduate and graduate levels of education.