Set a target of 271, Railways were bundled out for 222 in 83.3 overs with Laxmi Ratan Shukla leading from the front taking 3/45.
Also, Ashoke Dinda (2/77), Sourav Sarkar (2/22) and Shib Shankar Paul (2/47) returned with two apiece to take Bengal to the semis for the first time since 2006-07.
Needing 154 to win at the start of the day, Railways most trusted batting combination of Mahesh Rawat (14) and Arindam Ghosh (50) looked to threaten the Bengal camp under overcast conditions after Dinda gave the first breakthrough in the 10th over in the form of Nitin Bhille (5).
Ghosh's finely executed innings of 50 from 107 balls with eight fours came to an end after he was deceived by a fine late outswinger from Paul.
Also Read
Paul broke into an impromptu 'Gangnam Style' jig after dismissing Karn Sharma while Sarkar wiped off the tail with two wickets in two balls after the new ball was taken in the 82nd over.
Watched by a more than 2000 strong Sunday crowd, the entire Bengal contingent also did a victory lap in what was their last match at Eden this season.
Playing without their their main batsman and regular skipper Manoj Tiwary, India pacer Mohammad Shami and Wriddhiman Saha, who missed four matches due to national duty in South Africa, the Shukla-led Bengal were almost written off following their mediocre performances in the early stages.