Indian captain Virat Kohli on Sunday called the eight-wicket demolition of South Africa their "best game so far" in the ICC Champions Trophy but quickly cautioned against complacency.

Defending champions India qualified for the semi-finals of the tournament with as many as 12 overs to spare at the Oval.

"This is probably our best game we played so far… the most complete performance," Kohli said after the match.

Sent into bat by Kohli, South Africa were bowled out for 191 in 44.3 overs. In reply, India chased down the target with 12 overs to spare, reaching 193 for two in 38 overs, to set up a last-four clash with Bangladesh.

"It was a good toss to win, the wicket didn't change too much. A decent wicket to bat on. The fielders backed our bowlers," Kohli said.

India showed intensity from the word go, and the reward was a comprehensive win. While the bowlers fired as a unit, which was backed up by impressive fielding, Shikhar Dhawan (78) and Kohli (76 not out) led the batting show.

The Indian captain said, "The opportunity comes your way, you have to grab it."

Regarding rival skipper AB de Villiers' run-out dismissal, Kohli said, "It's always good to get him out early, he can always hurt you. We wanted to step up that intensity.

It's important for someone to bat till the end, but Shikhar's intent was outstanding."

About the game against Bangladesh, he said, "We played in Birmingham, we like that pitch, suits our game. No looking back. Always room for improvement, always small points you can improve on, can't rest on your laurels."

De Villiers, who confirmed that he will play in the 2019 World Cup, credited India and called them the better team on the day.

"Not an ideal way to finish. Credit to them in those first 15-20 overs, they put the pressure on us, we normally don't bat that way.

"We never got going, very sad obviously, We were hoping to play a better game of cricket. Came unstuck against a better team. Couldn't it get away. A lot of soft dismissals," de Villiers said.

Man of the Match Jasprit Bumrah, who picked up two wickets for 28 runs, said the plan was to bowl to a very tight line and length.

"It was an important game for us. We wanted to be calm and execute our plans.

"I'm happy with any role given to me. As long as you're contributing, it's good. The ball doesn't swing too much, so stick to the basics, bowl a hard length, don't give room. A good toss to win, chasing has been relatively easier."