Shaun Lunt scored two tries in five minutes to help the visitors to a 14-0 lead, but Ryan Lannon's try closed the gap to eight points at half-time.
Two quick tries from Craig Kopczak and Kriss Brining turned the game around to give Salford a four-point advantage.
Ben Murdoch-Masila scored Salford's fourth try, while Michael Dobson made it four out of four from the tee.
Lunt powered in from 60 metres after a scrum and followed that up by racing through unchallenged from 10 metres, with Jamie Ellis converting both tries to help the visitors open up a 12-point lead.
However, Dobson's kick sent Lannon over just as the first half was coming to a close to reduce the deficit to eight points.
Salford made a dream start after the break and led 12 minutes in the second half as first Kopczak ran in under the posts, followed by Brining going down the short side at the scrum to run 40 metres and score.
Kris Welham then knocked down a high kick for Murdoch-Masila to run in to secure the victory for Salford.
Salford head coach Ian Watson:
"At half-time, we just spoke honestly as a group. We knew the standards they were reaching in the first half didn't measure up to what we expect. We allowed Hull KR to dictate the speed of the game.
"We also spoke about us being soft in defence. They were dominating the ruck and getting up too quickly. We had to stop that and fortunately for us we did.
"They (Rovers) had a big dig and credit to them. We had to restructure and fixed it up in the second half."
Hull KR boss Tim Sheens:
"It was a good first half as we did some good things with the ball. In the second period we were on the back end of a poor penalty count, had a man down and we started to fall apart.
"We showed that we could go with them but the tide turned. When the conditions changed it didn't suit us.
"We were happy with the effort but we weren't happy with elements of the second half."
Salford: Murdoch-Masila, Johnson, Jones, Sa'u, Welham, Tasi, Mossop, Tomkins, Dobson, Evalds, Krasniqi, Lannon.
Replacements: Kopczak, O'Brien, Brining, Hauraki.
Hull KR: Abdull, Blair, Butler-Fleming, Cockayne, Ellis, Greenwood, Heffernan, Johnson, Kavanagh, Lunt, Minns, Scruton, Shaw.
Replacements: Salter, Mulhern, Lawler, Dockar-Clay.
Referee: Robert Hicks.
Salford turned around a 14-point deficit to beat Hull KR and reach the Challenge Cup quarter-finals.