Starting at an altitude of 193 m north of lac Brome, it flows westward until it reaches Farnham; this section is at the feet of the Appalachian Mountains, it receives two tributaries: North Yamaska River (French: Rivière Yamaska Nord) passing through Granby, and rivière Yamaska Sud-Ouest (South-West Yamaska River) draining Cowansville. After what it turns northward and enters the basses-terres du Saint-Laurent (lowlands of the Saint-Lawrence) and meets its main tributary Rivière Noire (Black River) at Saint-Damase, passing through its biggest agglomeration, Saint-Hyacinthe; it continues towards its mouth at Lake Saint Pierre, West of Saint François Bay.