Russell, who has been poorly all weekend, drove an outstanding race to jump ahead of his team-mate Kimi Antonelli, who led him in the first stint, with his different strategy of running long on the hard tyres before switching to the mediums.
And Sainz consolidated his excellent qualifying performance with a strong race to take the final podium place, confirming the progress Williams have made this season.
Russell said: “Congrats to Carlos and Williams – amazing result for them. For us. we’re happy to be back on the podium. It’s been a bit of a rough weekend for me personally but the car was great, so happy with that.
“I was pretty glad when I saw the chequered flag. Fortunately, I felt much better than I did on Friday and Saturday. Looking forward to a bit of rest now.”
Sainz, who joined Williams this year after being replaced by Hamilton at Ferrari, said: “Honestly can’t describe how happy I am and how good this feels. It’s even better than my first ever podium that I had.
“Everything comes together and we can do some amazing things together and today we nailed the race, not one mistake, and we managed to beat a lot of cars that yesterday I wasn’t expecting to beat.”
Antonelli took fourth after the sort of clean weekend his team boss Toto Wolff had asked him for after a difficult period, while Hamilton took eighth, the last car in the train behind Lawson.
Ferrari ordered Leclerc to let the seven-time champion by in the closing stages because Hamilton had much fresher tyres, while Hadjar took the final point for Racing Bulls.
Hamilton was asked to return the favour on the last lap because he had not made any progress. But he misjudged it, in the context of a late request from his engineer, and although he braked on the straight, he crossed the line 0.4secs ahead of Leclerc.
Hamilton apologised afterwards, but Leclerc said he didn’t care about eighth or ninth place, that the bigger concern was Ferrari’s lack of pace.