Raducanu entered Wednesday’s match having never won a set against a top-10 player, let alone beaten one.
Pegula had just won the Berlin Open on Sunday and asserted control early in the first two sets.
Despite his apparent struggles, Raducanu came back from 4-1 down in the first set before Pegula finally broke serve, while he trailed 3-1 in the second.
Once again, he recovered and Pegula had to work hard to force a tie-break.
The American scored match point at 6-5, and Raducanu capitalized to take the match to a deciding set, much to the delight of the British crowd.
The 2021 US Open champion is increasingly confident, providing support for a double break.
With the cushion behind him, Raducanu’s nerves began to show and he was unable to serve out the match on two occasions as Pegula equalized.
It looked like a third chance would also be wasted, as the Briton, breaking again, trailed 0-40.
But Raducanu reversed the deficit and held his head in both hands in disbelief when he emerged victorious.
She will play Daria Kasatkina after the Russian sixth seed battled China’s Yue Yuan to win 3-6 6-4 6-0.