Medvedev has now won 22 of his last 23 matches, claiming titles in Rotterdam, Doha and Dubai, and reached the final in Indian Wells, where he lost to world number one Carlos Alcaraz.
“I’ve never had a good start to a season. I’ve won a lot of matches, won tournaments. I’m very happy,” said Medvedev.
“I was disappointed at Indian Wells when my streak was over but the only thing you can do is start anew and I’m glad I was able to take my form to Miami.”
Medvedev, who is reaching the semifinals in Miami for the first time, will face fellow Russian Karen Khachanov for a place in the final after the 14th seed beat Argentine Francisco Cerundolo 6-3 6-2.