The 21-year-old also secured his debut at the ATP Finals in London next month after this biggest win of his career.
Tsitsipas will play third seed Daniil Medvedev of Russia in the semi-finals after the 23-year-old saw off Italy's Fabio Fognini, the No. 10 seed, 6-3, 7-6 (4) in 86 minutes. Medvedev now has a Tour-leading 57 wins this season and produced a 27-3 match record since July.
Djokovic, who won the Japan Open last week, has never failed to make the semi-finals stage in Shanghai and has won the title four times, in 2012, 2013, 2015 and 2018. But this time, his semi-finals streak was ended by Tsitsipas.
"He had the high-quality tennis and he played very well after his serve," the 32-year-old Serbian said of the world No. 7 Tsitsipas. "I didn't make him defend enough. I just gave him enough time to really dictate the play from back of the court and he deserved to win."
Tsitsipas overcame a slow start in the match, losing the opening three games in seven minutes, only to find his powerful serve in the second set when he improved his first service winning rate to 95 percent.
In the decider, the Greek broke at the third breakpoint in the fourth game to go up by 3-1, before finally sealing the victory 6-3.