This chapter sheds light on various aspects of network theory and relevant concepts including basic definitions, the most common types of network flow problems that have been studied by literature, and the main algorithms and solution approaches proposed for solving network problems.