After scoring 68 in India's 124-run victory against Pakistan in their Group B opener, Dhawan overpowered the Sri Lanka attack with another swaggering display at The Oval.
The 31-year-old hit 15 fours and one six in his 128-ball innings, receiving strong support from fellow opener Rohit Sharma (78) and MS Dhoni (63).
India's total was the highest of the tournament so far, surpassing the 319 for three they amassed against Pakistan.
It was a typically muscular effort from India as they pursue an 11th win from their last 14 ODI matches, and a 15th victory in their last 18 meetings with Sri Lanka.
Sri Lanka, beaten by 99 runs against South Africa in their first match, face a daunting task as they try to keep alive their hopes of making the semi-finals.
With plenty of cloud cover over south London, Sri Lanka captain Angelo Mathews opted to bowl first after winning the toss.
Mathews must have wondered if that was such a wise move when Lasith Malinga served up a generous offering with the first ball, a short and wide delivery that Sharma caressed to the boundary.
Dhawan was even more ruthless, contemptuously swiping Suranga Lakmal to the fence three times in four balls in the sixth over.
Having put on 136 for the first wicket against Pakistan, India's openers were back in the groove and Sri Lanka found it impossible to halt their momentum as the partnership passed 50 in the blink of an eye.
Sharma brought up the 100 stand and his 50 in one blow as he smashed a six off Thisara Perera.
Reaching his half-century in 58 balls was almost pedestrian by India's standards, so Sharma stepped on the gas with another huge six to the delight of the vociferous Indians who made up the bulk of the large crowd.
Eventually, Sharma attempted one flamboyant shot too many and was caught at fine leg off Malinga, bringing an end to the 138-run opening partnership.
Sharma's 78 came off 79 balls, featuring six fours and three sixes, but his departure was the signal for a brief India wobble as Nuwan Pradeep had captain Virat Kohli caught behind for his first ODI duck since 2014.
After Kohli's shock dismissal, Yuvraj Singh struggled to find his rhythm.
He made only seven before the flight of Asela Gunaratne's looping delivery deceived him and trickled onto the stumps to leave India 179-3.
Dhoni wrestled back the momentum for India as he got off the mark with a bludgeoned six, setting the stage for an awesome display of power hitting.
Dhawan couldn't be held in check for long either and he blasted a boundary to reach his ton in 102 balls before smashing Pradeep for a towering six.
Dropped by Danushka Gunathilaka off Malinga, Dhawan helped Dhoni put on 82 runs in 66 balls before finally falling victim to a mistimed slog off Malinga.
Dhoni was still blazing away down the other end and he reached his 62nd ODI half century in 46 balls.
By the time Dhoni was dismissed, his team's total was past 300 as they hit 51 runs in the last five overs to leave Sri Lanka in tatters.