El Elba nace en el norte de la República Checa, a 1386 m de altitud, en la vertiente meridional de los montañas de los Gigantes, y tras discurrir primero en dirección sureste y virar al noroeste, desemboca no lejos de Hamburgo en el mar del Norte.
Administrativamente, el río discurre por cuatro de las trece regiones de la República Checa — Hradec Králové, Bohemia Central, Pardubice y Ústí nad Labem— y cinco de los 16 estados federados de Alemania —Sajonia, Sajonia-Anhalt, Baja Sajonia, Schleswig-Holstein y Hamburgo —.
Las ciudades más importantes en su curso son las checas Hradec Králové (93 035 hab.), Pardubice (89 467 hab.), Ústí nad Labem (93 747 hab.) y Děčín (50 289 hab.) y las alemanas Dresde (525 105 hab.), Dessau (85 488 hab.), Magdeburgo (229 924 hab.), Hamburgo (1 734 272 hab.) y Cuxhaven (50 846 hab.).
Sus principales afluentes son los ríos Moldava (434 km), Saale (413 km), Havel (413 km), Ohře (316 km), Elster Negro (181 km) y Mulda (147 km).
La cuenca del Elba está habitada por 24,5 millones de personas.
El primer nombre atestiguado del Elba es en latín, Albis, que significa ' río ' o ' lecho de río ' y no es más que la versión en alto alemán de una palabra (albiz) encontrada en otros lugares en germánico; cf. Elfr, nombre para ' río ' en nórdico antiguo ; älv, ' río ' en sueco; elv, ' río ' en noruego; elf, ' río ' en inglés antiguo, y elve, ' lecho del río ', en alemán bajo medio.
El Elba es mencionado por primera vez por escrito por el geógrafo Estrabón, y registrado por Claudio Ptolomeo como Albis (' río ', en germánico) en Germania Magna con su fuente en las montañas de Asciburgis ( Krkonoše, Riesengebirge o montañas de los Gigantes ), donde vivían los Vandalii germánicos.
Durante mucho tiempo ha sido un importante delineador de la geografía europea. Los romanos lo conocían como el Albis; y más de una vez intentaron convertirlo en su frontera, cosa que conseguiría Carlomagno después de aplastar sajones.