Il territorio della Provincia di Milano è situato nella Lombardia centro-occidentale, nel tratto di alta pianura padana compreso tra il fiume Ticino a Ovest e il fiume Adda a Est. Il territorio è attraversato, oltre che dall’Adda e dal Ticino, anche dall’Olona dal Lambro, dal Seveso, dalla rete dei Navigli milanesi (Naviglio Grande, Naviglio Martesana, Naviglio Pavese) e da alcuni torrenti (Lura, Bozzente, Molgora, Arno). Il Ticino e l’Adda segnano rispettivamente il confine occidentale ed il confine orientale della provincia. Il Ticino, proveniente dalla Svizzera italiana, forma il Lago Maggiore e confluisce nel Po a valle di Pavia. Affluente del Ticino in Provincia di Milano è il torrente Arno. L’Arno attraversa l’Altomilanese ed è uno dei corsi d’acqua più inquinati della provincia.
L’Adda, proveniente dall’alta Valtellina, forma il Lago di Como e confluisce nel Po fra le province di Lodi e Cremona. In territorio provinciale l’Adda alimenta il Canale Muzza, il quale a sua volta riceve le acque del torrente Molgora, proveniente dall’alta Brianza. Il fiume Olona, proviene dalle Prealpi Varesine ed entra nella provincia attraversando Legnano, in seguito l’Olona attraversa pure Milano e sfocia nel Po presso San Zenone. Affluenti del fiume in Provincia di Milano sono i torrenti Bozzente, Lura, Merlata (formato dal Nirone e dal Pudiga) e Mussa (formato dal Lombra e dalla Garbogera).
Di minore importanza sono il Lambro ed il Seveso. Il Lambro (o Lambro Settentrionale), proveniene dal Triangolo Lariano, lambisce la periferia est di Milano e confluisce nel Po presso Orio Litta. Suo affluente in Provincia di Milano è il Colatore Lambro meridionale, derivato dall’Olona a Milano, riceve le acque in eccesso dei navigli e confluisce nel Lambro in Provincia di Lodi. Il Seveso, proviene dalle colline a sud di Como e dopo aver lambito la Brianza si perde nel labirinto idrico della città di Milano, confluendo in parte nel Naviglio della Martesana e quindi nel Cavo Redefossi ed in parte nel Cavo Vettabbia.