Mumbai lost their skipper Ajinkya Rahane early, but the in-form Prithvi Shaw (34 off 21) and Iyer ensured their team romped home in 16.5 overs.
Vidarbha had made 164 for seven with wicket-keeper batter Jitesh Sharma smashing 46 not out off 24 balls.
Mumbai will meet Himachal Pradesh in the final on Saturday.
Iyer showed ominous touch and warmed up nicely for the limited overs tour of New Zealand later this month. His knock comprised seven fours and four sixes. Sarfaraz Khan also chipped in with 27 off 19 balls.
Shivam Dube finished the game with a couple of sixes to remain unbeaten on 13 off four balls.
"I am happy that I took it till the end. My mindset was to stay in the attacking mode. Dew factor played an important part as well. We tried to punish the loose balls. The spinners also didn't get much turn," said Iyer after the semifinal at the Eden Gardens.
He also praised Shaw for his cameo at the top of the order.
"When Prithvi was batting, you always keep getting runs. We told him to stay at least till the first six overs. Few of our good batters didn't get a start. I was connecting almost on everything.
"I missed out on a few shots in the last game. The opposition is always under pressure in a game like this. HP have done well as well.
"You can't underestimate anyone. It is important to execute the plan on the given day," Iyer said, referring to Mumbai's opponents in the final.
Vidarbha 164/7 in 20 overs (Jitesh Sharma 46 not out; Shams Mulani 3/20).
Mumbai 169/5 in 16.5 overs (Shreyas Iyer 73; Akshay Karnewar 2/24).