Chand, who opened with Manan Vohra (17), led from the front with a strokeful innings as India chased down the target of 245 with 2.5 overs to spare at the Kinrara Academy Oval here.
India will now take on Pakistan in the final on Sunday.
The bedrock of India's run chase was a steady third-wicket partnership of 105 between Chand and Vijay Zol (54). Chand faced 141 balls and hit 11 fours and a six during his innings.
Chand was the last man out in the 47th over but by then he had taken India to the threshold of victory at 239 for four.
Akshdeep Nath (15 not out) and Sanju Samson (5 not out) then took India to 247 for four in 47.1 overs with the latter ending the run chase with a four.
Zol consumed 71 balls for his 54 and hit six fours before he was out in the 39th over.
For Sri Lanka, Tharindu Kaushal took two wickets for 20 runs while Sanitha del Mel and Lahiru Madushanka got one apiece.
Earlier, opting to bat, Sri Lanka never really had a grip on the game with the Indian bowlers keeping them in check.
Sri Lanka lost wickets at regular intervals and only could go close to the 250-run mark, thanks to a 103-run fifth-wicket stand between Sandun Weerakkody (73) and Niroshan Dickwella (66).
Off-spinner Baba Aparajith and left-arm spinner Harmeet Singh grabbed two wickets apiece for India while Vikas Mehra and Sandeep Sharma took one each.