LAHAINA, Hawaii — Gonzaga has been billed as a Final Four contender when Killian Tillie returns from an ankle injury.

These Zags look like one already, even with one of their best players in a walking boot.

Playing with poise and grit down the stretch, No. 3 Gonzaga turned back top-ranked Duke's late-game charge in an 89-87 win Wednesday in the Maui Invitational title game.

Gonzaga (6-0) put on an offensive show in the first half and battened down on defense after Duke made a second-half charge, blocking four shots in the final 46 seconds to win its second Maui title.

Rui Hachimura scored 20 points, Zach Norvell Jr. added 18 and the Zags beat a No. 1 team for the first time while ending the Blue Devils' unbeaten streak on the Valley Isle (17-1).

Five-time Maui champion Duke (5-1) made it look easy the season's first five games, its fantastic freshmen soaring through the spotlight, not cowering away from it while looking all but unbeatable.

The experienced Zags gave them a lesson in ball movement, orchestrating a master class in free-flowing, position-less basketball while building a 14-point first-half lead.

Duke's Maui run, done.

Well, not just yet.

The Blue Devils fell behind by 16 in the second half before firing up the Blue Devil express with a series of above-the-rim dunks and drives that left the Zags looking helpless.

Taking advantage of Gonzaga big man Brandon Clarke's fourth foul, Duke pulled within a basket as Blue Devils fans sent an earthquake of noise off the rafters of tiny Lahaina Civic Center.

Hachimura put Gonzaga up 89-87 with a strong move at the basket with 75 seconds left, but the Zags kept giving Duke chances by missing four free throws. Clarke clanked two with 30 seconds left and Hachimura came up empty on two more with 10 seconds left.

Gonzaga's defense made up for it.

Hachimuru and Clarke each had two blocked shots in the final 46 seconds, capped by Clarke's swat of R.J. Barrett's driving attempt at the buzzer.

A seated Barrett raised his arms, wondering why no foul was called. The Zags leaped in celebration after locking up their second Maui title in a game with a Final Four feel packaged in a small-town rec center.

Barrett had 23 points and Zion Williamson scored 22 for the suddenly humbled Blue Devils.

This was the game everyone expected when the Maui Invitational got another marquee title game between the what-will-they-do-next Blue Devils against the electrically efficient Zags.

Duke and its future lottery picks steamrolled San Diego State and outlasted No. 8 Auburn to reach its sixth Maui title game in six years. Gonzaga survived Illinois' frenetic attack and put on a second-half show to beat Arizona in the semifinals.

The Blue Devils ran roughshod over one top-5 team to open the season, making then-No. 2 Kentucky look like a JV team.

The Zags not only didn't back down, they threw the first punch.

Forcing Duke defenders through one ball screen after another, Gonzaga played the position-less basketball game better than the Blue Devils. The Zags all but took Duke big man Marques Bolden, who had seven blocked shots in the semifinals, out of the game with their ball movement and created numerous open looks for themselves.

But Gonzaga went into a stall when Clarke went to the bench with his fourth foul. Duke put together a run, a sixth Maui title within reach.

The Zags swatted Duke's bid away.