Mario Pasalic put Atalanta ahead in the 15th minute, turning in Davide Zappacosta‘s low ball from close range and United, with just one win in their last five games in all competitions, looked drained of belief.
A clever ball from Bruno Fernandes allowed Rashford to cut in from the left and he picked his spot with a shot into the far corner.
United drew level when Harry Maguire drilled the ball home at the back post after the stationary Atalanta defence failed to intercept a Fernandes ball across the box.
Then came the winner as Luke Shaw whipped in a superb cross from the left and Ronaldo rose superbly to perfectly place a header past Musso.
United top the group after three games on six points with Atalanta and Villarreal two points behind.