J.J. Redick had 16 points and Nikola Vucevic added 12 points and 17 rebounds to help the Magic hold off the Warriors 99-85 on Friday night.
The Magic snapped a four-game home losing streak and were active in all phases. But they got their biggest boost from the outside, connecting on 9 of 21 3-pointers.
''We talked about it a little bit and we knew that for us to be able to win games we would have to put in ourselves in better position at the start of games,'' Vucevic said. ''We came in with more focus, were more aggressive and it's a lot easier to play then.''
The Magic's offense had a flow to it that has only been seen in flashes this season. They had 26 assists on 41 field goals.
''That's what we have to do. When you build a big lead, you kind of have to expect a run,'' guard Arron Afflalo said. ''When we came in here at halftime, we understood they hadn't been shooting the ball well, so we kind of stuck with what we were doing.''
Stephen Curry led Golden State with 25 points and David Lee had 24. The Warriors shot just 37 percent and were outscored in the paint 42-34.
Golden State also had its five-game win streak ended. That streak began after a Dec. 3 home loss to the Magic.
Orlando led by as many as 20 before having its lead trimmed to 10 points late. But the Magic held them to just two points the rest of the way to help secure the win. Andrew Nicholson added 15 points and nine rebounds.
''I just think we got our legs back underneath us a little bit,'' Magic coach Jacque Vaughn said. ''I think it showed in our ability to make shots tonight (and) kept the floor moving. It's good to have a lot of things go well for us tonight.''
The Magic have won eight of their past nine against Golden State. Three of Orlando's next four opponents have losing records, beginning with a road matchup Saturday at Charlotte.
The Warriors wrap up their seven-game road swing Saturday at Atlanta.
''It was one of those nights where we were expecting a run,'' Warriors coach Mark Jackson said. ''A run of stops, a run of scores and it never happened. ... We never got into a danger zone where we felt like the game was ours.''
The Warriors cut Orlando's 16-point halftime lead to nine late in the third quarter, before watching the Magic make three straight 3-pointers as part of an 11-0 run to push it 20.
Orlando's hot shooting carried into the fourth and helped it fend off a late Warriors' run that cut the Magic's lead to 93-83 with less than three minutes to play.
Two nights after leading his team in scoring during their narrow win at Miami, Golden State guard Klay Thompson was relegated to the bench early in the first quarter Friday after picking up two quick fouls.
That stunted the Warriors offensive momentum, and when Thompson got back into the game in the second quarter, it was his shot that failed him. He was held scoreless in the opening 24 minutes, missing all five of his field goal attempts.
Lee carried Golden State with 16 first-half points, but it did little to quash the Magic's fast start as they took a 51-35 lead into halftime.
''We came into this game with a sense of urgency knowing that they came into our place less than two weeks ago and got a win,'' Curry said. ''I don't know exactly how to stop them. ... Thankfully, we don't have to play them again.''
Jameer Nelson said he hopes the defensive strides the Magic made Friday will carry over as much as their offensive ones as they hit the road Saturday to face Charlotte.
''We played more to our strengths as a team (and) got out running a little bit,'' Nelson said. ''I know they didn't shoot the ball well, but give a little credit to ourselves - we played pretty good defense.''
Notes: Orlando improved to 9-8 this season when it makes three or more 3-pointers. ... Magic G Maurice Harkless tied a career high with four blocks. ... Warriors coach Mark Jackson offered his condolences to those affected by the school shooting in Connecticut on Friday morning. ''It's a sad day,'' Jackson said. ''To see the president teary-eyed (and) emotional - it has impacted all of us. I got kids, who we take for granted waking them up and sending them to school. It's just a tragedy. So we're just lifting up that entire community. It's a difficult time.'' ... Golden State C Andrew Bogut missed his 18th consecutive game recovering from ankle surgery.