The defending champion needed a win to continue his bid for a second straight ATP Finals crown. The victory also knocks out Rafael Nadal, who was victorious earlier in the day.
Medvedev finishes his season on a four-match losing streak after reaching six consecutive finals during the summer hard court season, including his first major final at the U.S. Open.
Huge serving, timely forehands power Zverev to first set
Having already been eliminated after Nadal's win, Medvedev was broken in the first game of the match after watching his forehand break down. He also saw Zverev continue to utilize his serve to great effect, firing in the 140mph range frequently.
The Russian was doing his best to keep pace and a sublime drop shot brought him to 15-30 in the fourth game, but a wayward forehand and more punishing serves by the German allowed him to escape further trouble.
A double break deficit was starting Medvedev squarely in the face when he fell behind 0-30, but he responded with three aces in a row to hold. Zverev again squeezed out of difficulty by slamming down a pair of his own aces, the last at 144mph for a 4-2 edge.
The serve isn't Zverev's only weapon. His forehand is plenty capable and he needed to call on it when trailing 0-30 serving at 5-4. Four consecutive points won, three with forehands, the last going crosscourt for a winner to put the world number seven a set from the semifinals.
Defending champion withstands Medvedev challenge to progress in London
Medvedev seemed to find a rhythm of his own as the first set progressed, the one break in the opening game of the match dooming him. He was now matching Zverev hold for hold, finally drawing an error from the German's forehand to move ahead 2-1.
The two men had combined to win 15 points in a row on serve until Zverev made a mess of a volley and double-faulted to bring up 30-30. More big serving took care of his and his next service game, a 120mph ace out wide leveling the set at 4-4.
Seemingly untouchable this set on serve, Medvedev was under pressure after a double fault brought up break point, but the world number four erased the chance with an ace and held after watching the German err on a backhand to move within a game of the set.
The inevitably that the set would be decided in a tiebreaker was now upon the two men and Zverev was to benefit from two successful reversals on calls down 2-1. A few points later, Medvedev made his most crucial mistake, an untimely double fault giving the defending champion a 5-3 advantage.
The match was over three points later as Zverev secured his spot in the semifinals where he will face fifth seed Dominic Thiem for a place in his second consecutive final in London.