Dinwiddie scored 19 points in the second half, leading the Buffaloes (17-7, 7-5 Pac-12) to their 11th win in 12 home games and sending the Wildcats (20-4, 8-4) to their second straight loss.
Johnson also had nine rebounds.
Solomon Hill led Arizona with 12 points and Mark Lyons had 11.
The Buffaloes led 30-23 at halftime and were never seriously threatened over the final 20 minutes.
They started the second half with three free throws from Dinwiddie that gave them a double-digit lead. Dinwiddie added a dunk off a steal by Johnson and Andre Roberson's 3-pointer made it 38-23 with 17:50 left, forcing Arizona coach Sean Miller to call his second timeout.
The Wildcats got back in it with consecutive 3s from Lyons and Nick Johnson, and when Grant Jerrett hit a 3-pointer from the top of the circle, the Wildcats had chipped the lead down to 45-39 with 10:43 remaining.
No. 5 Gonzaga 77, Saint Mary's 60 • Gary Bell Jr. scored 20 points and helped fuel a fast start to the second half that helped Gonzaga take a stranglehold on the West Coast Conference race.