MINNEAPOLIS, April 6 (Ticker) -- Kevin Garnett scored 32 points and Chauncey Billups added 19, leading the Minnesota Timberwolves to a 108-104 victory over the Phoenix Suns.

Billups made two free throws to snap a 102-102 tie with 51 seconds left, then had a key steal that led to Garnett's basket with 16 seconds remaining that opened a four-point lead.

After tip-in by Jake Tsakalidis pulled the Suns within a pair with 11 seconds to go, Shawn Marion stole Joe Smith's inbounds pass. But Smith blocked Marion's shot and Billups sealed the victory by making two free throws with seven seconds remaining.

"We were just aggressive in the fourth quarter," Billups said. "I thought we grew a lot tonight. We were playing to win and not playing not to lose. A lot of times in the last two weeks, when the fourth quarter comes, we've been playing not to lose the game, and that takes our aggressiveness away."

NBA TV highlights from
Suns-Wolves:
56k | 300k

KG knows how to score, rebound, pass, and oh yeah, celebrate with the best of 'em.
David Sherman
NBAE/Getty Images
"They told me I shot in too quick," Marion said of Smith's block. "He tipped it and then he blocked it. It would have gone in. It was just one of those things. You have to stay in and play 'til the end. It just happened."

Phoenix's Stephon Marbury started on the bench with a sore left ankle but played 36 minutes and scored 23 points against his former team.

Marion scored 17 of his 20 points in the second half for Phoenix, which never led by more than four points in the final period. Jake Voskuhl also contributed a career-high 20 for the Suns.

"It comes down to us making plays again down the stretch," Phoenix coach Frank Johnson said. "You have to be able to finish these games. You have to know what we're running. You have to execute offensively and execute defensively."

Minnesota remained one game ahead of Portland in the battle for the fifth seed in the Western Conference and avenged a 103-100 overtime loss in February. Only two of their last nine wins have come by double figures.

"(Lottery teams) play loose and come in and want to ruin your day, but we can't let that happen," Minnesota forward Wally Szczerbiak said. "We let a couple teams get us when they shouldn't. We have to execute, play well and hope to build on this win."

Phoenix shot just under 54 percent from the field, but Minnesota held on by making 13-of-18 shots in the fourth quarter. Recently, the Timberwolves had their troubles in the final period.

"We executed in the fourth quarter," Minnesota coach Flip Saunders said. "We had another scary last 20 seconds, but I guess we're going to have to live with it. That's the way we are."

The teams traded baskets for most of the final period. Gary Trent hit a jumper to give the Timberwolves 100-97 lead, but Phoenix tied it on Marion's 3-pointer. Garnett dunked on the ensuing possesion before the Suns pulled even again on two free throws by Marbury.

The Timberwolves raced to a 19-7 lead, but Phoenix tied it at 52-52 at halftime. Voskuhl scored 17 points in the first half and Marbury, who was booed every time he touched the ball, added 13.

Garnett also grabbed 11 rebounds while Billups handed out 11 assists for Minnesota.

"We did some things in our zone," Saunders said. "We made some stops. I thought we kept aggressive in the fourth quarter. The biggest thing is we've lost aggressiveness at times. I thought this game we kept aggressive, and it showed. We scored 34 points (in the fourth quarter)."

The Timberwolves (47-29) matched last season's win total and need to win three of their final six games to match the franchise record of 50, set in the 1999-2000 campaign. Minnesota has won seven of 10 games following a seven-game losing streak.

Phoenix completed a five-game road trip with just one win and settled for a split of the four-game season series with the Timberwolves.