The defending world champions made light work of their clash at the Melbourne Cricket Ground, outclassing their Asian neighbours to stretch their unbeaten run at the tournament to seven games.
India will now play either Australia or Pakistan in the semi-finals in Sydney next week and on current form, they will be hard to beat.
Batting first, India compiled a daunting total of 302 for six, built on the back of a magnificent century from Rohit Sharma, who completed his first World Cup hundred with a slice of luck.
One of the most dangerous batsmen in the world, his return to form could not have come at a better time for an Indian team that struggled in the lead-up to the World Cup but is rapidly gaining momentum.
Rohit was caught in the deep when he was on 90 but was given a second life when the umpires ruled that Rubel Hossain’s delivery was above waist-height and therefore a no-ball, although television replays suggested otherwise.
Rohit went on to make 137 off 126 balls, highlighted by 14 boundaries and three sixes, while the left-handed Suresh Raina chipped in a with a quickfire 65 after India had waddled along to 115-3 and needed a lift.
Bangladesh, appearing in their first World Cup quarter-final, kept the Indian batsmen in check through the first 35 overs, stalling their run-rate with their spin bowlers.
But they dropped their heads after Rohit was given his reprieve and gave up 147 runs off the last 15 overs, leaving themselves a near impossible run-chase at one of cricket’s biggest and most intimidating cauldrons.
Bangladesh are one of the most improved sides in cricket. They beat England to make the quarter-finals but found India too hot.
Tamim Iqbal and Imrul Kayes came out all guns blazing, smacking 31 off the first six overs but when they fell in successive balls in the next over the run-chase was doomed.
Their frustrations were compounded by India’s excellent fielding, once one of their weakest points but now one of their strongest.
India have bowled out their opponents in all seven matches they have played at the World Cup, another ominous warning for their remaining challengers.
Shikhar Dhawan took a juggled catch on the fine leg boundary rope to send Mahmudullah, who had scored two consecutive hundreds in the Pool stage, on his way for 21.
Then the Indian captain and wicketkeeper Mahendra Singh Dhoni took a diving catch to remove Soumya Sarkar for 29 to effectively end any hopes of a Bangladesh upset.
(Editing by Sudipto Ganguly)