The Pudding River Basin's complex of headwater creeks originates from the western edge of the Cascade Mountains along a snowpack-limited
ridgeline (i.e. no glaciers are present) that forms a critical linkage from the
Mount Hood National Forest and
Table Rock Wilderness to
Silver Falls State Park and the rolling
Waldo Hills east of
Salem. Peak ridgeline elevations vary from . After emerging from the Cascade Mountain foothills of the Panther Rock Ridge and its unique forested upper-elevation wetlands and lakes, the key tributaries of the watershed like ecologically-important Butte Creek converge near
Woodburn into the meandering Pudding River. Passing through and within the Pudding River Valley, the numerous subwatersheds of the Pudding Basin represent a vital part of fertile agricultural lands of the Lower
Willamette Valley sub-basin. Two forks of the Pudding join between the cities of
Silverton and
Mt. Angel, at , as the river continues its course northward where it receives
Abiqua Creek from the right at about northwest of Silverton. North of Mt. Angel,
Butte Creek, which comes down from the
Cascade Range foothills past
Scotts Mills, empties into the Pudding River at . The river continues northward past the town of
Aurora. For most of its course, Butte Creek and the Lower Pudding River mainstem defines the boundary between
Marion and
Clackamas Counties. The Pudding River flows into the Molalla River, at , just before the Molalla joins the
Willamette River in a floodplain that is part of the
Molalla River State Park. ==Fishing==