Murali Vijay was closing in on his 12th hundred, with India reaching 1-248 before rain forced an early tea on the opening afternoon against Test newcomers Afghanistan.
Vijay, unbeaten on 94, built a solid 80-run partnership with KL Rahul after centurion Shikhar Dhawan was dismissed just after lunch at Bengaluru's M Chinnaswamy Stadium on Thursday.
Seamer Yamin Ahmadzai claimed Afghanistan's first wicket in Test cricket when left-handed Dhawan edged a probing delivery outside off stump to Rahmat Shah, who parried it towards the safe hands of Mohammed Nabi at first slip.
The 32-year-old smashed a blistering 107 off just 96 deliveries, studded with 19 fours and three sixes, and became the first Indian to score a hundred before lunch on the opening day of a Test.
After Dhawan's departure, Vijay took charge of the innings by punishing Afghanistan's three-pronged spin attack of Rashid Khan, Mujeeb Ur Rahman and Nabi on both sides of the wicket.
Rahul, sent in ahead of Cheteshwar Pujara at number three, offered great support from the other end and was not out at 33.
Dhawan and Vijay dominated the opening session after stand-in Indian skipper Ajinkya Rahane won the toss and chose to bat in overcast conditions.
Afghanistan quicks Wafadar and Ahmadzai, who have played a combined 25 first-class games in their career, struggled to make full use of seamer-friendly conditions as the Indian openers cashed in with boundaries at regular intervals.
Led by Asghar Stanikzai, Afghanistan became the 12th Test playing nation after being awarded the full member status alongside Ireland in June last year.
Rahane is leading the Indian side in the absence of regular skipper Virat Kohli, who is recovering from a neck injury.