Dicle, Güneydoğu Toroslarda Maden Dağları kesiminde, Hazarbaba Dağı'nın güney tarafında, Yıldızhan yanındaki bir kaynaktan çıkıyor. Buradan çıktıktan sonra Maden ilçesinin önünden geçer ve Maden Çayı adını alır.
Güneydoğu'ya doğru dar ve derin vadilerden geçip Diyarbakır şehrinin bulunduğu lav sahanlığının doğu kesimine paralel olarak akan Dicle Nehrinin tabanı burada 600 metreye kadar iniyor.
Diyarbakır'ın güneyinde 8 km mesafede doğuya yönelen Dicle Nehri, kuzeyden Toros Dağları yamaçlarından iniyor. Anbarçayı, Kuruçay, Pamukçayı ve Hazroçayı, Batman ve Yanarsu ile birleşiyor.
Güneyden ve Mardin eşiğinden inen sel yatakları Göksu ve Savur Çayı Dicle’ye katılıyor. Raman Dağının güney eteklerinde dar boğazlardan geçiyor. Botan Suyu ile birleştikten sonra da güneye dönüyor.
Nehir, güneye doğru akarken Cizre ilçesinin içinden Habur Suyu kavşağına kadar 40 km uzunlukta Türkiye-Suriye arasındaki sınırı meydana getirmesi yönünden de oldukça önemli. Habur Suyu ile birleştikten sonra Irak topraklarına giriyor.
Dicle, Irak toprağında çöküntü çukurdan akarak, dar boğazları aşıyor. Musul'da Büyük ve Küçük Zap ile birleşiyor. Mezopotamya ovasına indikten sonra Bağdat yakınlarında Fırat'a 35 kilometre yaklaşıyor. Burada İran'dan gelen Piyale Nehriyle birleşiyor. Daha sonra tekrar Fırat'a yaklaşıyor. Kurna yakınında Basra’nın 64 km yukarısında Fırat’la birleşerek Şatt'ül-Arab ismini alıyor ve Basra Körfezine dökülüyor.