In a twice rain-delayed match, the Queenslander recovered from a break down in both sets to defeat the Estonian 6-3 6-3.

In the opening games of the semifinal, Barty struggled to overcome a powerful Kontaveit, who went up a break before the rain delay forced the players off the court.

They briefly returned to Hard Rock Stadium with the Australian able to break back before the rain disrupted play again.

The time away from the court allowed Barty to reset after a poor start and she came back to win the next five games.

Kontaveit was clearly upset with herself after losing the first set but after a pep talk from her coach, who reminded her what she needed to do, the world No.19 broke Barty to take a 3-1 lead.

However, Barty took advantage of the errors Kontaveit was making to race through another five games to seal her spot in the final.

“It was a very long day but I think for me it’s an opportunity to come out and play another match – I know we have to wait around but we can’t control the weather. It was an opportunity for me to drink a lot of coffee and watch a bit of the golf,” Barty said.

“Just relaxed and when we came back on the court it was back to business.”

After making the semifinal after her first win over Petra Kvitova, Barty will make her top-10 debut in next week’s rankings.

Barty will face either former world No.1's Simona Halep or Karolina Pliskova, who play later today AEDT.

The highest ranked Australian has played both players previously with her recent match against Halep at the Sydney International being Barty's first win over the Romanian while she has split four career meetings with Pliskova.

“Obviously I’ve been doing the right things throughout the week to be able to put myself in a position to play for a title.

“I think you have to go out there (and) embrace it. I’m gonna be playing against an extremely tough opponent, regardless of who it is. And I can go in there and play with freedom and try and play my brand of tennis.”

The Miami Open final will be played on Saturday (local time).