The headwaters of the French Broad River are near the town of Rosman in Transylvania County, North Carolina, just northwest of the Eastern Continental Divide near the northwest border of South Carolina. They spill from a 50-foot waterfall called Courthouse Falls at the terminus of Courthouse Creek near Balsam Grove. The waterfall feeds into a creek that becomes the North Fork, which joins the West Fork west of Rosman. South of Rosman, the stream is joined by the Middle Fork and East Fork to form the French Broad River. From there it flows northeast through the Appalachian Mountains into Henderson, and Buncombe counties. In Buncombe County, the river flows through the city of Asheville, where it receives the water of the Swannanoa River. Downstream of Asheville, the river proceeds north through Madison County, where it flows through its county seat, Marshall. After passing through the mountain resort of Hot Springs in the Bald Mountains, the river enters Cocke County, Tennessee.