Mitchell Johnson was the bowling hero for Punjab after earlier helping to send the game into extra-time in a late partnership with Axar Patel as both sides finished their innings on 191-6.
Chris Morris trapped David Miller leg before with the first ball of Punjab’s extra six deliveries, which turned into seven because of a costly no-ball, but he conceded three successive boundaries to Marsh as they made 15-2.
Johnson bowled Shane Watson first ball but then gave away a four to Steve Smith – also a no-ball for height – but James Faulkner was run out off the fourth ball to hand Punjab victory and end Rajasthan’s unbeaten start to the campaign.
The Royals looked on course for a score of 200-plus with Rahane and Shane Watson in fine form, the Australia all-rounder eventually becoming the first wicket to fall with the score on 95.
Deepak Hooda scored a quick 19 off nine balls, but Smith was bowled by Patel for a golden duck and their momentum only picked up again in the last couple of overs.
By then Rahane had departed for a top score of 74 off 54 balls, the India batsman hitting six fours and a couple of sixes.
Hopes of a Kings XI victory appeared some way off when they slumped to 59-3 in the middle of the ninth over, Glenn Maxwell making only one before being dismissed by Rahul Tewatia.
But Marsh produced some massive shots in his innings of 65 off 40 balls and there were late fireworks from Miller, who belted five sixes in his 30-ball 54.
Patel and Johnson then managed to put on 25 off the final 13 balls to force extra-time, the former hitting Faulkner’s final ball to the boundary to set up what turned into an unlikely victory.