Italy's Cecchinato had not won a match in five attempts at a Grand Slam before this week, but the 25-year-old baseliner managed to convert his fourth match point to secure a semi-final with Dominic Thiem, who overcame an injured Alexander Zverev 6-4 6-2 6-1 earlier on Tuesday.
Cecchinato cruised through the opening set as Djokovic was suffering from neck pain before the Serbian fought back after the loss of the second.
ATP Monte Carlo
'I know what I have to do' - Why Federer will be working harder than ever
Cecchinato hit 22 winners in the second set as he recovered from trailing 4-3 in the tie-break to take it 7-4 on Suzanne-Lenglen as his defence and attack worked in perfect harmony.
Highlights: Cecchinato stuns former champion Djokovic
And he roared back from 5-2 behind in the fourth set before winning an epic tiebreak 13-11 with Djokovic having several chances to force the decider with three set points.
It was the first meeting between the pair on the ATP Tour, and it goes to the man from Palermo, who produced a fearsome forehand to leave 12-times major champion Djokovic disappointed only two years after he completed the career Grand Slam in Paris.
Cecchinato becomes the first Italian man to reach a Grand Slam semi-final in 40 years.
The last Italian man to take part in a major semi-final was Corrado Barazzutti at the 1978 French Open.
'There's nothing I like about clay' - Medvedev not looking forward to French Open
ATP Monte Carlo
Djokovic, Nadal talk positive but both face questions in Monte Carlo