長崎県東彼杵町と佐賀県嬉野市の境をなす台地「大野原」(おおのばる)の北西部を水源とする。大野原は森林と原野が広がる標高350 - 550 m程度のなだらかな台地で、陸上自衛隊大野原演習場・茶畑(そのぎ茶)・棚田などに利用されている。また、ここにはため池の中山池・太ノ原池・平山池がある。本流は佐賀県境に近接した中山池に一旦溜まり、北西へ流れ出す。
大野原の北西部から数本の川が北へ流れ落ちて合流するが、この際に台地の縁に深いV字谷を刻む。台地を流れ落ちた水は谷底から西へ流れる。本流に沿った坂本郷や菅無田郷には谷底平野があり、川沿いに棚田や段々畑が広がる。
法音寺郷で北の虚空蔵山から流れてくる川内川が合流し、合流後は扇状地の中を南西へ流れる。扇状地には田畑が広がり、河口両岸に彼杵の街並みと港がある。川は田畑と住宅地の中を流れて大村湾へ注ぐ。
下流域の彼杵はひさご塚古墳をはじめとした古墳群がある。江戸期には長崎街道の宿場「彼杵宿」として、時津港(現・時津町)や平戸方面など各方面への船便もあり捕鯨の拠点にもなるなど古くから栄えてきた。ただし彼杵川の洪水にはたびたび悩まされており、『大村郷村記』にはすぐに氾濫するので往来する人々が難渋する旨の記述がある。川の各所に堰や砂防堰堤が作られている。また川の下流には飛び石も残っている。