Sehwag and Virat Kohli both reached three figures as they posted 370 in their 50 overs after Bangladesh opted to field.
A spirited Bangladesh response saw them compile 283-9 with Tamim Iqbal hitting 70 as Shakib Al Hasan also passed 50.
Aggressive from the outset, India quickly set about posting a large total but lost Sachin Tendulkar relatively early for 28.
Gautam GambhirÃ¢â‚¬â„¢s run-a-ball 39 was the perfect support to Sehwag, whose onslaught at the other end was nothing short of a master class.
The 203-run partnership between Sehwag and Kohli simply took the game away from Bangladesh as Kohli backed his selection with a well-paced innings before bringing up his hundred in the final over.
Shakib returned to prevent Sehwag from breaking Gary KirstenÃ¢â‚¬â„¢s record for the highest score by any player in a world cup match, playing onto his stumps and falling 13 runs short.
In reply Bangladesh took the game to India racing to 50 off just five overs with Imrul Kayes sending the ball to all parts.
Munaf Patel eventually undid Kayes but a strong middle order effort ensured there was no collapse with Junaid Siddique hitting 37 alongside a more patient Iqbal.
Captain Shakib then gave further impetus by hitting 55 from just 50 balls but once the run rate climbed above 10 and the tail was exposed Patel and Khan returned to see out the victory.
Speaking after the game India captain Mahendra Singh Dhoni said his side must improve their fielding despite the convincing win. He said: Ã¢â‚¬Å“There are a few departments where we need to improve, we need to save runs and itÃ¢â‚¬â„¢s a big concern for us”.
Meanwhile, Shakib bemoaned his sideÃ¢â‚¬â„¢s bowling performance. He said: Ã¢â‚¬Å“We bowled too many bad balls and it cost us the game but hopefully we can come back in the next game strongly.”
India 370-4 Bangladesh 283-9 (India win by 87 runs)
MORE: The latest football news
MORE: The latest tennis news
BIOGRAPHY: Marcus Rashford