Chasing 158, the Ranji and Irani Trophy champions had a jittery start after they lost five wickets in 26 runs to be 47/5 in the 12th over but sensible batting by youngsters Karun Nair (53 not out) and Lokesh Rahul (38) set up the chase with a 66-run partnership.
After Rahul's fall, 22-year-old Nair, who made the first-class debut this season, showed the right temperament as his unbeaten half-century, third in List A, saw the team through with seven overs to spare.
R Vinay Kumar promoted him to the crucial No 3, a move that faltered badly with Upadhyay (7-2-27-3) and Anureet (7-1-28-2) blazing all guns.
Having impressed behind the stumps, Lokesh Rahul was solid with his batting technique as well. The 21-year-old revived their chase with Karun Nair giving a fine company.
Rahul also had luck on his side as he survived a close lbw appeal before getting a reprieve on 23. The duo put on the match-turning 66-run partnership for the sixth wicket.
Earlier, No. 8 batsman Rongsen Jonathan topscored for Railways as his gritty 46 from 57 balls (3x4) helped them recover from being 83/7 to 157 all out in 47.4 overs after they were asked to bat on the Eden green top.
It was a pathetic display from the Railways top and middle-order batsmen until Jonathan's positive intent put them past 150.
First, he stitched a crucial 38-run eighth wicket stand from 60 balls with Amit Mishra, while with Anureet he added a brisk 34 from 35 balls to give the much-needed push to their total.
