Virat Kohli and Murali Vijay put on 283 runs for the third wicket as India reached 371-4 at stumps on day one of the third test against Sri Lanka on Saturday.
At close of play, Kohli was unbeaten on 156 and Rohit Sharma was 6 not out. Vijay scored 155 runs for his 11th test century.
After tea, Kohli brought up his 20th test hundred off only 110 balls. He became the first Indian batsman - and sixth overall - to score hundreds in all matches of a three-test series.
Kohli also became the first Indian batsman to score three hundreds in a test series since Rahul Dravid managed this feat against England in 2002.
Kohli extended his partnership with Vijay in the final session as the duo continued to plunder runs in New Delhi. They brought up the 200-stand off 272 balls while India crossed 300 in the 72nd over.
Vijay reached his 150 off 251 balls, but was stumped off Lakshan Sandakan (2-110) toward the end of the day's play. This was his second-highest score in test cricket after 167 versus Australia in 2013. Overall, he faced 267 balls and hit 13 fours. Vijay and Kohli took India from 78-2 to 361-3.
Sandakan struck a quick second blow as Ajinkya Rahane (1) was stumped as well, giving Sri Lanka something to smile about.
Kohli reached 150 off 178 balls and then batted out the day in Sharma's company.
India reached 116-2 at lunch, and 245-2 at tea, after winning the toss and opting to bat.
India leads the three-match series 1-0 after winning the second test in Nagpur by an innings and 239 runs. The first test in Kolkata was drawn.