The Highlanders scored 31 unanswered points in the second half with some breathtaking rugby as they gained their sixth win in seven games.
They scored seven tries to none and the winning margin would have been even greater had they not missed six shots at goal.
Thomson was at his brilliant best but the Highlanders forwards all tucked into their work with gusto as Jamie Mackintosh, Jason Rutledge and Nasi Manu all had particularly strong games.
Ben Smith scored two tries and was lethal from fullback, Kade Poki was an elusive runner on the right wing and Aaron Smith controlled play well from halfback.
The Highlanders were seeking to bounce back after losing to the Brumbies in Canberra last week while the Rebels were keen to consolidate after their win over the Force.
They were buoyed by the return of star backs James O'Connor and Kurtley Beale while Jarrad Hoeata and Thomson were back to reinforce the injury-hit Highlanders.
The Rebels absorbed some intense early pressure and, on their first excursion into Highlanders' territory, O'Connor kicked a regulation penalty when Chris King infringed at a scrum.
The Highlanders continued to make most of the play, and most of the mistakes, and O'Connor kicked his second penalty after 16 minutes for a ruck infringement.
Midfielder Lloyd Johansson was sin binned for a tip tackle on James Haskell after 20 minutes but Ben Smith missed the long-range penalty from in front.
O'Connor increased the Rebels' lead to 9-0 as the Melbourne side, despite being down to 14 men, looked the sharper and more composed on attack.
The Highlanders were making costly mistakes, Hosea Gear unable to hold a hard pass from Tamati Ellison with the line open.
They finally had reward after 32 minutes when, after concerted attack, Ben Smith gathered in a pass on the 22 and wriggled and fended out of two tackles to score. Chris Noakes converted and it was 9-7.
O'Connor kicked his fourth penalty just before the break but the Highlanders tied the scores at 12-12 deep into injury time when Thomson scored after they hammered away from a tap penalty and the defence eventually cracked.
The Highlanders had played frantic rugby but had made too many errors, conceding 14 turnovers. The Rebels kicked and played the percentages more and they had been forced to make 85 tackles as the Highlanders ran the ball from everywhere.
Goal-kicking had also been a factor, O'Connor kicking four from four and the Highlanders one from four.
The Highlanders started the second spell impressively, Thomson scoring his second try after three minutes following some concerted pressure and a lovely pick-up and pass by Ben Smith.
And they had a bonus point try three minutes later, Aaron Smith kicking into space from a turnover and wing Kade Poki winning the race to gather and score. Noakes converted and it was 24-12.
The Highlanders scored their fifth try after 18 minutes, captain Jamie Mackintosh driving over from close range after relentless attack. Noakes converted and it was 31-12.
The Highlanders varied their attack more in the second half, and kicked more, and the tactics proved much more effective.
The sixth try came after 24 minutes, Noakes flicking on a lovely pass and Ben Smith running through a gap on an angle to score his second. Noakes converted and it was 38-12.
Thomson scored his third as the Highlanders rang the changes and the score mounted.