Истоки реки находятся на границе Монголии и Китая, на восточных склонах Монгольского Алтая. В Китае река известна как Чёрный Иртыш; далее она входит в Казахстан, проходит Зайсанскую котловину и впадает в проточное озеро Зайсан.
Из Зайсана Иртыш выходит усиленным притоками Рудного Алтая, Тарбагатая и Саура и направляется на северо-запад через каскад ГЭС (Бухтарминская, Усть-Каменогорская, Шульбинская). В Усть-Каменогорске в Иртыш впадает Ульба — река, на слиянии с которой стоит областной центр.
Ниже по течению река проходит Семей (область Абай) и Павлодарскую область; часть стока уходит в канал Иртыш — Караганда. В районе Ханты-Мансийска Иртыш впадает в Обь.