Networks are pervasive in all fields of science and engineering. Yet, static network information only provides us with very limited information about many crucial processes such as biological/machine learning, epidemic spreading, opinion formation, sychronization, swarming, and many more. In this course, we shall discuss the mathematical foundations to analyze dynamics on and of networks. Beyond basic modelling and stability theory for network dynamics, we shall also study bifurcations, mean-field limits, moment closure methods, coarse-graining, adaptivity/learning dynamics, and geometry of networks.