The river originates in Baad, one part of Mittelberg in the Kleinwalsertal by the union of three smaller source streams. It flows in the northwestern direction through the valley and in earlier times gave it the name of Breitachtal. At the Walserschanze, the Austrian-German border, the Breitach reaches German territory and curves through the narrow Breitachklamm. Lastly the Starzlach flows into it from the west. From the Illerursprung in Oberstdorf it forms the Iller together with the Stillach and Trettach.
There is a so-called Breitach rock of geological interest, as it is only found in the Breitach.