The Indians dominated with both bat and ball, restricting Sri Lanka to 215 runs before Shikhar Dhawan’s unbeaten century helped them canter to a big win with 17.5 overs to spare.
India have now won every series at home since the defeat to South Africa in October, 2015. The Sri Lankans will continue the search for their first bilateral series win in India.
Dhawan, who remained unbeaten on 100, produced a partnership of 135 runs with Shreyas Iyer after the early departure of Indian captain Rohit Sharma.
Dhawan, who racked up 13 boundaries and two sixes over the course of his 85-ball stint in the middle, registered the sixth century of his ODI career.
Iyer scored 65 runs off 63 balls to bring up the second half-century of his fledging three-match-old ODI career.
He smashed eight boundaries and a six before a poor shot saw him offer an easy catch to Suranga Lakmal at mid-on off Thisara Perera’s bowling.
At that point, India were cruising along comfortably with the scoreboard reading 149/2 in the 23rd over.
Dinesh Karthik (26 not out) then joined Dhawan in the middle and the duo saw India through to a resounding victory.
Pacer Thisara Perera and off-spinner Akila Dananjaya were the only Sri Lankan bowlers among the wickets with figures of 1/25 and 1/53 respectively.
Earlier, India rode on a strong bowling performance to restrict Sri Lanka to 215 runs.
Spinners Kuldeep Yadav and Yuzvendra Chahal did most of the damage by taking three wickets each. Yadav returned figures of 3/42 off his 10 overs while Chahal conceded 46 runs for his three wickets.
Hardik Pandya notched up figures of 2/49 while fellow pacers Bhuvneshwar Kumar and Jasprit Bumrah picked up a wicket each.
Upul Tharanga was the highest scorer for the visitors with 95 runs off 82 balls. The left-hander’s 36th ODI half-century was studded with 12 boundaries and three hits into the stands.
Sadeera Samarawickrama gave him excellent support from the other end, scoring 42 runs off 57 deliveries, hitting five boundaries along the way.
Asked to bat first by the hosts, most of the Sri Lankan batsmen virtually gifted away their wickets with some poor stroke making as their hopes of recording a first bilateral series win in India took a big hit.
The visitors suffered an early blow when opener Danushka Gunathilaka was caught at mid-on by Rohit Sharma in the fourth over while trying to go after Jasprit Bumrah.
However, the visitors staged a strong comeback with Upul Tharanga and Sadeera Samarawickrama adding 121 runs between them.
The two of them batted comfortably to set Sri Lanka up for a big total. Tharanga took a particular liking to Hardik Pandya, smashing the pacer for five consecutive boundaries in the ninth over.
But just when it seemed that the duo might help the visitors run away with the game, Yuzvendra Chahal removed Samarawickrama to give India a much needed breakthrough.
Tharanga was also dismissed shortly afterwards when Mahendra Singh Dhoni showcased a glimpse of his still lightning quick reflexes to stump the left-hander off Kuldeep Yadav’s bowling.
That virtually signalled an end to Sri Lanka’s will to fight as they lost wickets at regular intervals with the rest of their batsmen guilty of some atrocious shot selection.
Sri Lanka: 215 in 44.5 overs (Upul Tharanga 95, Kuldeep Yadav 3/42, Yuzvendra Chahal 3/46) vs India: 219/2 in 32.1 overs (Shikhar Dhawan 100 not out, Shreyas Iyer 65).