The three-match series now goes to a decider in Melbourne on Friday after Australia won the opening game in Sydney by 34 runs
Veteran wicketkeeper Mahendra Singh Dhoni steered India to a six-wicket victory over Australia in the second one-day international to level the series in Adelaide on Tuesday.
Former skipper Dhoni, playing in his 334th ODI, cooly guided India across the line with four balls to spare to back up a dazzling century from captain Virat Kohli.
India successfully chased down a target of 299 runs set by Australia who scored 298 for nine with Shaun Marsh scoring 131 off 123 balls.
The three-match series now goes to a decider in Melbourne on Friday after Australia won the opening game in Sydney by 34 runs.
"Tonight was an MS (Dhoni) classic," man-of-the-match Kohli said. "He takes the game till the end, when only he knows what's going on in his mind, and he backs himself to hit those big shots at the end.
"And hats off to Dinesh (Karthik) too, he came in and took the pressure off him."
When Kohli holed out to Glenn Maxwell at deep mid-wicket to end his stellar knock of 104 off 112 balls, it was 37-year-old Dhoni who took charge to pilot his side home with support from Karthik with an unbeaten 25.
Dhoni was physically struggling in the hot conditions and needed treatment from the team physio to finish his match-winning knock and keep India alive in the series.
India lost four wickets in their chase after Australia's total.
Shikhar Dhawan hit out before he was snapped up by Usman Khawaja at mid-wicket off Jason Behrendorff for 32 from 28 balls in the eighth over.
India were sailing along before Sydney centurion Rohit Sharma on 43 top-edged Marcus Stoinis to deep forward square where Peter Handscomb, looking into the setting sun, took a safe catch to break up a dangerous 54-run partnership with Kohli.
Ambati Rayudu was the third wicket to fall caught at deep mid-wicket by Stonis off Maxwell for 24.
Kohli was annoyed to get out with the job unfinished and six overs left but Dhoni used his vast experience to get his team safely home.
Marsh hammered 11 fours and three sixes, claiming his seventh ODI century and second against India as Australia made the tourists sweat in the field in temperatures hovering around 40 Celsius.
Shaun Marsh:— Fox Sports Lab (@FoxSportsLab) January 15, 2019
- Equal 2nd highest ODI score
- 7th ODI century
- 3rd in Australia
- 2nd v India
Since February 2018, Shaun has scored 4 of Australia's 5 ODI centuries
Shaun Marsh is the only Australian batsman to score a century at home this summer (all formats)#AUSvIND 🇦🇺 💯 pic.twitter.com/XC1XIwxRx4
India could have been chasing an even higher total if not for the last three overs from Bhuvneshwar Kumar and Mohammed Shami.
They took a combined four for 17 in the last 18 balls with Kumar claiming the big wickets of Marsh and Glenn Maxwell.
Maxwell had kicked along Australia's scoring rate with a typically rumbustious knock of 48 off 37 balls coming into bat at No.7.
"When you come up like a batting side against India, you know you have to get wickets regularly, and we ran into that man Dhoni as well," Australia skipper Aaron Finch said.
"Credit to India, they played well. We played well as well, it was a good game of cricket."
Finch earlier struggled for runs before he was bowled by Kumar off an inside edge for six in the seventh over and Usman Khawaja put on 56 runs for the third wicket with Marsh before he was brilliantly run out by Ravindra Jadeja with a direct throw from cover point for 21.
Handscomb threw away his wicket when he rashly tried to sweep Jadeja but was well beaten and smartly stumped by Dhoni on 20.
Stoinis was caught behind off a short ball from Shami for 29, and Maxwell produced a lively cameo with Marsh before he was caught at long-off by Karthik.
Marsh followed in similar fashion two balls later when he lofted Kumar to Jadeja at long-off.
The wickets kept tumbling late in the innings with Jhye Richardson caught at deep point by Dhawan off Shami for two and Peter Siddle was out for a first-ball duck caught by Kohli at deep backward point off Kumar.
The Australians lost four wickets for three off 11 balls before Nathan Lyon blasted a six off the final ball.
Kumar finished with four for 45 and Shami three for 58.
A. Carey c Dhawan b Shami 18 27
A. Finch b Kumar 6 19
U. Khawaja run out (Jadeja) 21 23
S. Marsh c Jadeja b Kumar 131 123
P. Handscomb st Dhoni b Jadeja 20 22
M. Stoinis c Dhoni b Shami 29 36
G. Maxwell c Karthik b Kumar 48 37
J. Richardson c Dhawan b Shami 2 6
N. Lyon not out 12 5
P. Siddle c Kohli b Kumar 0 1
J. Behrendorff not out 1 1
Extras (lb4, w6) 10
Total (9 wickets; 50 overs) 298
Fall of wickets: 1-20 (Finch), 2-26 (Carey), 3-82 (Khawaja), 4-134 (Handscomb), 5-189 (Stoinis), 6-283 (Maxwell), 7-283 (Marsh), 8-286 (Richardson), 9-286 (Siddle)
Bowling: Kumar 10-0-45-4 (2w), Shami 10-0-58-3, Siraj 10-0-76-0 (3w), Kuldeep 10-0-66-0, Jadeja 10-1-49-1 (1w)
R. Sharma c Handscomb b Stoinis 43 52
S. Dhawan c Khawaja b Behrendorff 32 28
V. Kohli c Maxwell b Richardson 104 112
A. Rayudu c Stoinis b Maxwell 24 36
M.S. Dhoni not out 55 54
D. Karthik not out 25 14
Extras (lb9, w7) 16
Total (4 wickets; 49.2 overs) 299
Fall of wickets: 1-47 (Dhawan), 2-101 (Sharma), 3-160 (Rayudu), 4-242 (Kohli)
Did not bat: R. Jadeja, K. Yadav, B. Kumar, M. Shami, M. Siraj
Bowling: Behrendorff 8.2-1-52-1, Richardson 10-0-59-1 (2w), Siddle 8-0-58-0 (3w), Lyon 10-0-59-0 (1w), Stoinis 9-0-46-1, Maxwell 4-0-16-1
Result: India won by 6 wickets