The top section of the river's course leads through a hilly region called the Weserbergland. It extends from the confluence of Fulda and Werra to the Porta Westfalica, where the Weser runs through a gorge between two mountain chains, the Wiehengebirge in the west and the Wesergebirge in the east.
Towns at the Weser, from the source to the mouth: Hannoversch Münden, Beverungen, Höxter, Holzminden, Bodenwerder, Hamelin, Hessisch-Oldendorf, Rinteln, Vlotho, Bad Oeynhausen, Porta Westfalica, Minden, Petershagen, Nienburg, Achim, Bremen, Brake, Nordenham, Bremerhaven.
The largest tributary of the Weser is the Aller river, which joins the Weser before Bremen.
Tributaries of Weser and Werra (from source to mouth)