The IPL once again lived up to its top billing as the world's best T20 league.
So many close finishes, so many last ball-finishes, so many world class performances... IPL 2023 had it all.
The unheralded Rinku Singh made everyone sit up and take notice as he single-handedly steered KKR to victory in a few close run chases, while young turks Shubman Gill and Yashasvi Jaiswal made the world stand up and take notice of their immense potential.
There was no stopping the masters -- Faf du Plessis and Suryakumar Yadav -- while Heinrich Klaasen shone among the ruins for SRH.
Among the bowlers, Mohammed Shami and Rashid Khan powered Gujarat Titans to the top of the standings, picking up 24 wickets apiece.
Mohammed Siraj continued his superb recent form and the slingy Matheesha Pathirana had the batters running for cover, while the experienced leg-spin duo of Yuzvendra Chahal and Piyush Chawla tallied 20-plus wickets each.
Check out the Rediff IPL 2023 Dream Team after 64 matches:
Faf du Plessis (captain)
Faf du Plessis enjoyed his best IPL season.
The 38 year old outperformed opening partner Virat Kohli with his consistent performances right through the tournament.
Du Plessis and Kohli, who had three century and five half-century stands, together put on a record 939 runs in the league stages to equal the record for the highest runs by a pair in a single IPL season.
Du Plessis blazed his way to the top of the run-scoring charts in the league stages with 730 runs, with eight fifties, at a strike rate of 153.
He hit as many as 36 sixes -- the most by any batter in the league stage, while hitting the longest six this season, measured at 115 metres.
In fact, openers made most of the batting-friendly conditions in IPL 2023 as the top six run getters in the league stages were all openers.
There was no stopping the Gujarat Titans opener as he finished the league stage in smashing fashion with successive centuries and a 94 not out in his last four innings.
The 23 year old is a close second to du Plessis, with 680 runs at an average of 56 with a strike rate of 152, hitting two hundreds and four fifties.
With Gujarat guaranteed at least two more matches in the play-offs, Gill is all set to finish as the highest run-getter in IPL 2023.
Yashasvi Jaiswal is a name you will hear a lot more in the coming years, especially in international cricket.
The Rajasthan Royals youngster stole the show with the bat -- smashing 625 runs in 14 matches at a strike rate of 163 -- the most runs by an uncapped player in IPL history.
It was unfortunate that Royals lost steam towards the closing stages to miss out on the play-offs, but Jaiswal emerged as one of the best batter in the league stages, hitting a century and five fities.
Suryakumar Yadav struggled at the start of the tournament, managing just 16 runs in his first three innings as MI endured a difficult start.
Once he got going there was no stopping SKY.
SKY smashed four fifties and a century in seven innings to lead MI's superb recovery in the middle part of the league stages.
He tallied 511 runs in 14 games at a strike rate of 185 -- the most by any batter scoring 200 runs or more in the league stage.
The entire cricketing warmed up to KKR's batting sensation Rinku Singh.
Rinku produced one of the most sensational finish in T20 cricket, smashing Gujarat Titans pacer Yash Dayal for five sixes off the last five balls of the match to power KKR to an unbelievable victory in a huge run chase.
He became only the fourth player in IPL history to hit five sixes in an over and the 31 runs KKR scored in the final over are the most scored by any team in the 20th over of a run chase in T20 cricket.
He also came up with another cracking fifty (54 from 43 balls) to help KKR stun Chennai Super Kings in front of their home fans in Chennai.
He finished off the tournament with another amazing innings of 67 from 33 balls against Lucknow Super Giants to nearly take KKR to another stunning win.
The future is only looking bright for Rinku, who finished with 474 runs in 14 matches at a strike rate of 149.
He relished his role as the finisher for KKR, as he slammed 305 in seven innings at a strike rate of 174, with four fifties in run chases.
Heinrich Klaasen (wicket-keeper)
Heinrich Klaasen was another unexpected performer in the league stages.
The South African wicketkeeper-batter was the only positive for the struggling Sunrisers Hyderabad, who finished bottom of the standings with just four wins from 14 games.
Klaasen was 10th in the run-getters list in the league stages, with 448 runs from 12 matches at a strike rate of 177 -- the best performance by a wicket-keeper in the league stages even ahead of the likes of Ishan Kishan and Sanju Samson.
Despite the legendary Brian Lara as the head coach, SRH's next best was Rahul Tripathi at 37th spot with 273 runs from 13 games at a strike rate of 128.
He played an outstanding innings of 104 from 51 balls against RCB, but the disappointing showing from the bowlers saw SRH finish on the losing side.
Afghanistan's spin ace Rashid Khan once again gave ample proof as to why he is rated as the best spinner in the world in T20 cricket.
He was the joint highest wicket-taker in the league stages with 24 wickets in 14 games at an economy rate of 7.82, with one four-wicket haul.
Such was Rashid's consistency that he failed to pick up a wicket in only two of the 14 league matches.
Rashid also showed his utility with the bat as he blasted 79 not out from 32 balls, with 10 sixes and three fours, against Mumbai Indians.
Mohammed Shami was another top performer with the ball for the high-flying Gujarat Titans.
He also bagged 24 wickets in the league stages at an impressive economy rate of 7.04, with two four-wicket hauls.
Shami made the new ball count, picking up 15 wickets in the first six overs of Powerplay.
Spin ace Yuzvendra Chahal was Rajasthan Royals' consistent performer with the ball.
Chahal was the third highest wicket-taker with 21 wickets in the league stages, including three four-wicket hauls.
Such was his impact that every time Chahal picked up two wickets or more, Royals finished on the winning side every time -- in five matches.
But Chahal had an up and down season, as along with some good performances he also went wicketless in five matches.
Piyush Chawla's career got a new lease of life in IPL 2023.
He played just one match in IPL 2021 and was not picked last season and switched to commentary.
This season too, there was not much interest in the 34 year old before Mumbai Indians signed him for his base price of Rs 50 lakh.
But he has proved to be worth every rupee as he single-handedly shouldered MI's spin department.
He was instrumental in Mumbai Indians' qualification to the play-offs with 20 wickets in the league stages with a superb economy rate of 7.81 -- better than the likes of Rashid, Chahal and Varun Chakravarthy.
Matheesha Pathirana was one of the surprise performers of the league stages.
Popularly known as 'Baby Malinga' for his slingy action modelled on the Sri Lankan great Lasith Malinga, Pathirana has emerged as a force with the ball for CSK in the death overs.
Pathirana, 20, has picked up 15 wickets in 10 matches at an economy rate of 7.56 despite bowling most of his overs at the end.
His 14 wickets in the death overs (16th to 20th over) are the most by any bowler in IPL 2023, while conceding runs at under eight per over.