Nasce tra il Monte Generoso e il Monte d'Orimento in località Barco dei Montoni in provincia di Como (altitudine 1389 m), scorre nella Val Breggia a cui dà il nome, entra in territorio svizzero nei pressi dell'abitato di Erbonne, attraversa tutta la Valle di Muggio, dove scorre nel Parco della Breggia[6]. Dall'uscita del parco scorre parallelamente all'autostrada A2, attraversando la zona nord di Chiasso. Dopo aver ricevuto le acque del torrente Faloppia e quelle del depuratore di Chiasso, il Breggia lambisce Vacallo, rientrando in Italia a Maslianico. Questa zona prende anch'essa il nome di Val Breggia. Sfocia nel Lago di Como nei pressi di Villa Erba, al confine tra i comuni di Como (borgo di Tavernola) e Cernobbio (quota 198 m).
Essendo di carattere torrentizio e scarsamente alimentato, nella sua parte superiore è spesso in secca se non in occasione o immediatamente dopo precipitazioni. Nel mese di luglio, la portata media del torrente nei pressi di Chiasso si aggira infatti attorno a un valore di 0,5 m3/s[7]. Più a valle, essendo alimentato dalle acque reflue delle località e dal Faloppia (suo principale affluente), diventa perenne, con valori di portata idrologica media annua intorno a 2,7 m3/s[8].
Una curiosità: il torrente non viene chiamato indifferentemente con l'articolo maschile o femminile, bensì la prima versione è usata solitamente in Italia, l'altra è utilizzata per lo più in Svizzera.
«Il Comasco esténdesi in quasi tutta la provincia di Como, tranne l'estrema punta settentrionale al di là di Menagio e di Bellano a destra ed a sinistra del Lario; e in quella vece comprende la parte meridionale del Cantone Ticinese, sino al monte Cènere. [...] Il Ticinese è parlato nella parte settentrionale del Cantone Svizzero d'egual nome, al norte del Monte Cènere, in parecchie varietà, tra le quali distinguonsi sopra tutto le favelle delle valli Maggia, Verzasca, Leventina, Blenio ed Onsernone»