Serena Williams beat Maria Sharapova for the 15th time in a row to set up a Sony Open final against Li Na.
Williams saw off the fourth-seeded Russian 6-4 6-3 and now leads the career head-to-head 16-2, both Sharapova's wins coming back in 2004.
The American had to come from a break down in both sets, recovering from 4-1 behind in the first and 2-0 in the second.
She was helped by eight aces and broke Sharapova's serve on five occasions in total, aided by five double faults from the Russian.
"It wasn't easy," Williams told the WTA Tour's official website. "Obviously Maria plays really well, and she's done really well here, so I just decided I had to do a little better, stay focused and make more shots."
Williams is now through to her ninth final at the event, having won six of them.
"That's pretty awesome - I didn't even realise!" said Williams. "But I just love playing here in Miami. This is my home. I love you guys!"
Sharapova said: "Despite my results against her, I still look forward to playing against her because you learn so much from that type of level which she produces.
"You finish the match, and you know where you need to improve and the things that you need to work on."
World No 2 Li later came through an erratic serving performance to beat Dominika Cibulkova in three sets.
The Australian Open champion served six double faults and won just eight of 29 second-serve points on her way to a 7-5 2-6 6-3 success.
Her record agaisnt Williams is no better than Sharapova's: in 11 meetings Li has won just once, and that was six years ago.