Young striker Brad Grobler scored a brace as Dinaledi broke a three-game winless streak in the best possible style.
Grobler had the game’s first effort on goal, forcing Patrick Tignyemb to parry a long-range drive behind for a corner kick in the 10th minute.
From the set-piece Stars took the lead thanks to Joseph Malongoane, who tucked home from close range after Tshepo Ramaokala’s delivery from the by-line.
Celtic almost replied in the 14th minute, with Cecil Oersen’s free-kick turned away to safety by Tapuwa Kapini in Dinaledi’s goal. But just two minutes later Celtic were level, with Sandile Ndlovu firing home a fierce shot from 18 yards out.
But on 24 minutes Stars retook the lead, with Ramokala winning a header inside the 18-yard area to set up Grobler, and the striker needed no further invitation to net his side’s second goal.
The visitors were dealt a blow on the half-hour mark when Malongoane had to be replaced due to injury, which saw the experienced Dillon Sheppard take up his place in midfield.
And Sheppard proved his class a short while later when he scored Stars’ third goal, heading Joseph Mkalipa’s inviting cross beyond the reach of Tignyemb in the 42nd minute.
Celtic shuffled their pack at the start of the second half, with Owen da Gama taking a more attacking approach by replacing midfielder Mark Mayambela with forward Moses Spandeel.
Phunya Sele Sele’s more positive outlook paid quick dividends, with Prince Olomu scoring in the 52nd minute after Stars were unable to deal with a corner-kick from Oersen.
However, Stars were in no mood to give Celtic a sniff of a comeback and restored their two-goal lead on the hour-mark when Henrico Botes turned home Sheppard’s cross.
Botes almost scored Stars’ fifth 13 minutes later when he headed over from a corner-kick, and it was soon the turn of Celtic’s Mbuyiselo Sambu to test Kapini with a long-range drive that forced the keeper into a fine save.
With five minutes to play any slight hope Phunya Sele Sele may have had evaporated when former Stars defender Michael Khaile was sent off for a second bookable offence.
Stars wrapped up a five-star performance when Grobler scored their fifth in injury time, netting after good set-up play by substitute Norikazu Murakami.