Ulster went top of Pro14 Conference A after an eighth victory out of eight this season against Edinburgh.
The visitors raced into a 19-point lead as Stewart Moore, John Andrew and John Cooney crossed.
Jack Blain registered a converted try before and after half-time to reduce Edinburgh's arrears.
Jordi Murphy ensured a bonus-point win for Ulster before Cooney got his second try and Andrew added two more as Dan McFarland's side moved above Leinster.
Leinster trail by three points but have a game in hand while Edinburgh are fifth in Conference B with two wins from seven matches.
Ulster must have thought they had put Edinburgh to bed midway through the first half. Their domination was complete.
The first try came as early as the fourth minute when Andrew and Cooney scampered away up the right with the scrum-half putting Moore away for the score. Cooney then made it 7-0. For Edinburgh, it was a dismal beginning. For Ulster, it was probably what they were expecting.
Just before the end of the first quarter, Ulster struck again, Andrew ploughing over from close range. Ulster's power was too much. Five minutes later, they got their third score. Their forwards having taken them downfield, Cooney then sniped his way over from close range. Edinburgh's defence was soft and dozing. Cooney banged over the conversion for good measure.
At that point, it was looking like a rout. The last time Ulster were in Edinburgh they delivered a terrific come-from-behind victory in the semi-final of the last season's Pro14. This one looked like being a pillar-to-post win. It was, but not entirely in the way we thought.
Just as soon as Ulster had built a lead, they fell off the pace of the game and allowed Edinburgh to clamber their way back into it. Blain came in on a sharp line off James Johnstone to score, Chamberlain converting.
That was on the half-hour. Just after the break, Blain scored again, accepting an offload from Eroni Sau from close range. Chamberlain made it 19-14 with the boot.
Edinburgh thought they had wiped out the deficit altogether soon after when a Chamberlain penalty came slapping back off Ulster's left-hand upright. Jamie Farndale beat Cooney to the loose ball to touch down but the score was ruled out. Farndale was ahead of Chamberlain on the point of contact. A sickener for the home side.
Ulster sickened them further within minutes. These days, it's almost harder not to score from a driven 5m lineout than it is too score. Sure enough, when Ulster got field position they executed. Murphy piled through for the bonus point and Cooney made it an eight-point game with the conversion. To make things worse, Bill Mata, not long on the field as a replacement, was binned.
That try, on top of their own near-miss from Farndale, virtually did for Edinburgh, but there was a flourish from the Ulstermen before the end. Ian Madigan started it with a half-break and fend of Luke Crosbie, before offloading out the side door to Sam Carter.
The lock galloped on, drew the cover and put in Cooney for a lovely try that settled it once and for all. With the extra two from Cooney, Ulster were back to where they were before with a 19-point lead. Edinburgh desperately need the return of their international cavalry before their season turns to mush for good.
Ulster hammered home their superiority again with another driven lineout. Like shooting fish in a barrel, Andrew was the man again. And again. The hooker completed his hat-trick in the last play. Another battering of the Edinburgh line, another example of Ulster's superior muscle and another try. A once tight affair had become a 40-point shellacking.
Frankly, the final whistle was a blessing for Edinburgh.
Edinburgh head coach Richard Cockerill: "We had a poor start. We got ourselves back into it. We just couldn't sustain it. If we had got Jamie Farndale's try, if it wasn't offside, maybe it would've been slightly different.
"Once the momentum turned, we weren't strong enough to cope with it. Ultimately, they were just better than us. We've just got to keep working at our game. We haven't got the depth. We're missing so many players. We're missing a pack of forwards and some."
Edinburgh: Blain, Sau, Johnstone, Dean, Farndale, Chamberlain, Pyrgos, Schoeman, Cherry, Atalifo, Ferreira, Davidson, Bradbury, Crosbie, Miller.
Replacements: Coombes for Farndale (70), Shiel for Pyrgos (68), Grahamslaw for Schoeman (77), Willemse for Cherry (65), Gamble for Atalifo (70), Hodgson for Ferreira (54), Boyle for Crosbie (70), Mata for Miller (49). Sin Bin: Mata (60).
Ulster: Lowry, Faddes, Hume, S. Moore, Lyttle, Madigan, Cooney, Warwick, Andrew, M. Moore, A. O'Connor, Carter, Reidy, Murphy, Coetzee.
Replacements: Sexton for Lyttle (8), Johnston for Madigan (68), Shanahan for Cooney (68), McCall for Warwick (48), Milasinovich for M. Moore (50), D. O'Connor for A. O'Connor (64), McCann for Reidy (68), Roberts for Coetzee (74).