Richardson nailed six from seven with the boot, including a penalty goal from near halfway to clinch the win.
Castleford bounced back from last week’s defeat to Wigan to remain third in the Betfred Super League table as Greg Eden, Liam Watts, Cheyse Blair and Jake Trueman all bagged tries.
Andy Ackers almost opened the scoring after five minutes for Salford, but strong Tigers defence kept him out.
A minute later Castleford took the lead from smart play by Richardson, who replaced Jordan Turner in the halves.
With the ball spilled by Elliot Kear, the half-back took advantage and his pin-point kick to the wing was taken by Eden to score. Richardson added the extras to make it 6-0.
Six minutes later Salford tied it up through Kevin Brown. A brilliant leap by the returning Kallum Watkins claimed Tui Lolohea’s kick and he passed for Brown to touch down between the sticks.
Soon after good kick pressure forced former Red Devils player Niall Evalds back in-goal and the Tigers into a goal-line drop-out.
The Red Devils made them pay in the next set when Ackers dived over from dummy half to cross and Harvey Livett’s kick was on target to give the home team a 12-6 lead.
But that did not last as Castleford hit back soon through Watts.
After Paul McShane broke through, he found Michael Shenton in support who then put Watts over for the try. Richardson’s conversion levelled the scores up again.
The half-back then slotted a penalty goal from near halfway right on half-time to put the visitors 14-12 in front at the break.
In the second half the Tigers extended their lead quickly when Blair won the race to ground Trueman’s kick and Richardson continued his perfect record to make it 20-12.
In the 52nd minute Ackers went close to sniping over again for another try but was held up.
Six minutes later Richardson slotted another goal, his fifth of the night, to push Castleford further ahead.
Then Trueman sealed the victory in the 60th minute when he stepped his way over to score.
Richardson could not land his conversion, but the Tigers were comfortable with a 26-12 lead.
With 12 minutes left Richardson was hit late by Lee Mossop and he was sent to the sin-bin.
The half-back landed the ensuing penalty before Lolohea crossed for a try to give Salford some hope, but it was not enough.
Salford: Kear, Sio, Watkins, Livett, Williams, Lolohea, Brown, Mossop, Ackers, Ikahihifo, Greenwood, Roberts, Addy. Substitutes: Atkin, Burke, Johnson, Ormondroyd.
Castleford: Evalds, Olpherts, Mata’utia, Shenton, Eden, Richardson, Trueman, Milner, Sene-Lefao, Holmes, Millington, McShane, Massey. Substitutes: Watts, Blair, Peachey, Martin.
Referee: Robert Hicks (RFL).
Support The Yorkshire Post and become a subscriber today. Your subscription will help us to continue to bring quality news to the people of Yorkshire. In return, you’ll see fewer ads on site, get free access to our app and receive exclusive members-only offers. Click HERE to subscribe.