Dhawan, who scored 114 against South Africa last week, hit an unbeaten 102 as India coasted to an easy eight-wicket win at The Oval.
Darren Sammy scored a rapid unbeaten 56 following Johnson Charles' impressive 60 but the West Indies could only post a poor total of 233 thanks mainly to Ravindra Jadeja's maiden five-wicket haul in one-day internationals.
India never looked like losing in reply. Dhawan and Rohit Sharma (52) shared an opening stand of 101 and Virat Kohli chipped in with 22 before Dhawan and Dinesh Karthik (51 not out) guided the Indians to their target with just under 11 overs to spare. The result means India are now guaranteed to progress from Group B while Pakistan, whom they face on Saturday, cannot make the last four.
Dhawan and Sharma averaged well over five an over in the early stages. Sunil Narine and Sammy entered the attack but made little impact as the opening pair motored past 100 in the 16th over. Sharma had just reached his half century when he was caught behind by Charles, who was keeping wicket in the absence of suspended Denesh Ramdin, off Narine.
Kohli scored four boundaries in 18 balls before playing on to his own stumps with the score at 127. Karthik had an incorrect dismissal against himself overturned and India passed 150 in the 23rd over. India brought the 200 up in the 35th and heavier showers then began to fall, causing umpires Aleem Dar and Tony Hill to bring the players off.
They returned half an hour later and Dhawan brought his ton up with a six over third man off Dwayne Bravo before Karthik passed 50 with the winning runs - a four over the covers.
Earlier in the day former West Indies captain Chris Gayle scored a quickfire 21 before his opening partner Charles carried on in the same vein, reaching 60 off 55 balls before being trapped lbw by Jadeja to leave the score at 103 for two. Jadeja then removed Marlon Samuels for one after a not out bat-pad call was overturned and Ramnaresh Sarwan soon followed when he edged the spinner to Mahendra Singh Doni.
Dwayne Bravo and Darren Bravo restored some stability, but the run rate had dropped hugely since Gayle and Charles departed. The pair added 31 before Darren Bravo (35) was stumped by Dhoni after he ventured down the track to Ravichandran Ashwin. Dwayne Bravo's hook then found Jadeja on the square leg boundary, leaving the batting side on 163 for six.
Bhuvneshwar Kumar caught Keron Pollard (22) on the boundary in the 43rd over and Jadeja completed his five-wicket haul soon after following the dismissal of Narine. Sammy then hammered five fours and four sixes to give the Windies a glimmer of hope, but it was not enough as India cruised to their target with ease.