It was Sanath Jayasuriya who got the breakthrough for the hosts, when Dravid misread a slower delivery to hole out a catch to Tillakaratne Dilshan. Dravid's 56-ball innings included two fours and a six.
Dhoni, who followed next, kept up the run flow. Tendulkar's ton came in 33rd over and included eight fours. But with the century came cramps and Dravid had to return to the field, this time as a runner for Tendulkar.
Tendulkar stitched a 110-run partnership with Dhoni, who after a making a 62-ball 56 was being caught by Thilina Kandamby in the 37th over.
Tendulkar then joined forces with Yuvraj Singh (56 not out) and it looked that the Indian batting maestro will carry his bat through, but was trapped lbw by Ajantha Mendis in the last ball of the 46th over. His scintillating innings was studded with 10 fours and a six.
Yuvraj cut loose in last four overs piling 42 runs as India coasted to a competitive total.