Il fiume parte da un ghiacciaio chiamato Gangotri Glacier, che si trova nella regione di Garhwal in Himalaya. Il Gange scorre attraverso l'India del nord e termina nella Baia del Bengala nell'India orientale. Complessivamente scorre per 3.877 km rendendolo uno dei fiumi più lunghi del mondo. Il suo spartiacque è largo 907.000 km². I principali fiumi che sfociano nel Gange sono il Brahmaputra, il Gomti, il Kosi, il Gandak, il Ghaghra, lo Yamuna e il Son.
Il Gange scorre solo 200 km attraverso l'Himalaya. Il fiume tocca la pianura nella regione di Rishikesh vicino a Haridwar in Uttarakhand. Poi passa attraverso le città di Kanpur, Soron, Kannauj, Allahabad, Varanasi, Patna, Ghazipur, Bhagalpur, Mirzapur, Ballia, Buxar, Saidpur e Chunar. Ad Allahabad, il fiume si unisce al fiume Yamuna. A Pakur, il fiume si divide in due distributori, cioè il Bhāgirathi-Hooghly e la corrente principale. Il Bhāgirathi-Hooghly nel corso successivo forma il fiume Hooghly. La corrente principale Gange entra in Bangladesh. Vicino al confine con il Bangladesh il Farakka Barrage controlla il flusso del Gange deviando parte dell'acqua in un canale di alimentazione che ha un collegamento con il fiume Hooghly per mantenerlo relativamente senza limo.