Většinu kraje odvodňuje řeka Odra se svými přítoky Opavou, Ostravicí a Olší do Baltského moře. Část Nízkého Jeseníku a malých území okresu Nový Jičín odvodňuje řeka Morava do Černého moře.
Odra
Řeka Odra pramení v Oderských vrších. Teče Poodřím, největšími přítoky jsou Olše, Opava, Ostravice. Protéká Ostravou. Naše území ČR opouští na jejím třetím nejnižsím místě s nadmořskou výškou 195 m. U štětína se vlévá do Baltského moře.
Opava
Řeka Opava vzniká ve Vrbně pod Pradědem soutokem Černé, Zlaté a Bílé Opavy. Jejím největším přítokem je Moravice. Protéká Opavou a vlévá se do Odry.
Olše
Olše pramení v polských Slezských Beskydách, protéká Jablnkovskou brázdou a odděluje tak Moravskoslezské Beskydy a Slezské Beskydy. V úseku mezi Českým Tššínem a Karvinou tvoří česko-polskou hranici. Vlévá se do Odry.
Ostravice
Řeka Ostravice pramení na moravsko-slezsko-slovenském pomezí. Vzniká soutokem Bílé a Černé Ostravice. V roce 1970 byla na Ostravici vybudována přehrada Šance, která zásobuje Ostravsko pitnou vodou. V Ostravě se Ostravice vlévá do Odry.
Moravice
Řeka Moravice pramení pod Vysokou Holí v Jeseníkách. Na jejím toku jsou vybudovány přehrady Slezská harta a Krušberská přehrada. Řeka Moravice má charakter horské řeky a vlévá se do Opavy.
Morávka
Řeka pramení pod Malým polomem v Moravskosleezských Beskydech. Napájí vodní dílo Morávka. Vlévá se do Ostravice.