Chasing 275 for a win, the Virat Kohli-led India achieved the target in 44.3 overs with Rayudu, who struck 10 fours and 4 sixes in his 118-ball stay, hitting the winning boundary.
Brief scores: Sri Lanka 274/8 in 50 overs (Kumar Sangakkara 61, Angelo Mathews 92 not out, Dhammika Prasad 30 not out; Axar Patel 2-39).
India 275/4 in 44.3 overs (Shikhar Dhawan 79, Ambati Rayudu 121 not out, Virat Kohli 49; Seekkuge Prasanna 3-53).