Australia's bowlers ripped through Sri Lanka's tail to dismiss the tourists for 294 late on day one of the third Test.
The visitors looked on course for a sizeable total as they worked their way to 250 for five thanks to impressive knocks by youngster Lahiru Thirimanne (91) and skipper Mahela Jayawardene (72).
But the dismissal of Thirimanne late in the final session sparked a collapse with Sri Lanka losing their last five wickets for just 44 runs in front of more than 26,000 people at the Sydney Cricket Ground.
Test newcomer Jackson Bird (four wickets for 41 runs) was the chief destroyer while the returning Mitchell Starc (three for 71) also impressed as Australia's bowlers eventually justified skipper Michael Clarke's decision to field first.
The hosts will now aim to pile on the runs on day two as they look to complete a series clean sweep and send retiring batsman Michael Hussey out on a high.
Bird continued where he left off from his Test debut in Melbourne by capturing both openers in the first session.
Dimuth Karunaratne departed for five when he miscued an attempted pull shot off Bird, who then had Tillakaratne Dilshan (34) caught behind.
Jayawardene and Thirimanne put on 62 runs for the third wicket before an inspired bowling change saw Starc strike with the first ball of his new spell.
Clarke took a sharp catch at first slip to remove his opposite number but only after the left-armer survived a close call on a front-foot no-ball.
Peter Siddle got in on the act late in the middle session by snaring Thilan Samaraweera lbw as the vulnerable and wounded visitors showed tremendous resolve to get to 169 for four at tea.
But despite being in a strong position late in the final session, Thirimanne's soft dismissal inside the last hour triggered a flood of wickets.
The 23-year-old, who only arrived in Australia two days ago, had averaged less than 20 in his seven previous Test matches but dominated all the bowlers in a fantastic knock.
He did have a little bit of luck when he was given out lbw on the first ball he faced, only to be given a reprieve by the third umpire upon review.
Thirimanne also got another life on 65 when he got a faint edge off Nathan Lyon which bounced wickedly and hit wicketkeeper Matthew Wade on the shoulder before falling to the turf.
And he made the most of the let-offs in a 151-ball stay, which included 13 fours and one massive six, moving to within nine runs of a maiden Test century.
But it was an attempt at another expansive shot off Lyon that proved his undoing, slicing a drive high to point where David Warner took an impressive diving catch.
Thirimanne received terrific support from skipper Jayawardene in the middle session before Angelo Mathews (15) and Dinesh Chandimal (24) both contributed to good partnerships.
That pair both fell victim to Starc, with Hussey taking a smart catch to remove Mathews, while Chandimal was beaten by a vicious yorker.
After losing in two-and-a-half days in Melbourne, Sri Lanka's wounded and fragile lower order again folded meekly to hand the initiative back to the hosts.
Dhammika Prasad (two), Rangana Herath (five) and Suranga Lakmal (five) all went in quick succession once Australia took the new ball.