Jason Heyward hit a three-run homer to lead the Braves' offense that scored in all but two innings, Hudson pitched seven strong innings, and Atlanta set season highs for runs and hits in a 13-4 rout of the Philadelphia Phillies.
Andrelton Simmons and Dan Uggla also homered for Atlanta, which amassed 19 hits while snapping a three-game skid. Brian McCann had four hits, and Simmons was a double shy of the cycle.
Hudson (5-7) allowed one run and five hits to earn his first victory since May 5. The right-hander had been 0-6 with a 4.50 ERA in his last 10 starts. He struck out four and didn't walk a batter.
"It's a long time not to get a win," Hudson said. "It's nice to get on the board in the right column."
Hudson, who retired the final 11 batters, looked more like the dominant pitcher who has made three All-Star appearances than the one who has struggled the last two months.
"I felt real good and it's nice to get runs early," Hudson said. "The guys came out swinging the bats and had good at-bats. It was a great night overall for everybody."
Hudson, who had his start pushed back one day due to neck stiffness, got 10 runs of offensive support Saturday after having only 14 combined runs during his winless streak.
"Hudson pitched a great game and gave us seven good innings on a tough night to pitch," Braves manager Fredi Gonzalez said. "It was the same old Huddy. We gave him some runs and he shut them down."
The Braves scored in every inning except the third and sixth.
Michael Young homered for Philadelphia, which fell 8½ games behind the first-place Braves in the NL East.
The Phillies also sustained an injury hit before the game when the team placed slugger Ryan Howard on the 15-day disabled list because of left knee inflammation. Howard will get an MRI in the next day or two, according to general manager Ruben Amaro.
"That's a big blow," Philadelphia manager Charlie Manuel said. "His presence means something to us. He's still a threat."
Kyle Kendrick (7-6) gave up six runs and 12 hits in five innings. Kendrick was pitching for the first time since sustaining a mild concussion last Saturday after being hit on the helmet by a pitch against the Dodgers.
"They were being real aggressive and I was making not quality pitches," Kendrick said.
The Braves jumped in front when Simmons led off the game with a homer to left field, then went ahead 3-0 on Uggla's two-run homer in the second.
Atlanta tacked on a run in the fourth and two more in the fifth, including Hudson's RBI single, before Heyward's three-run homer in the seventh put Atlanta ahead 10-1.
"A lot of guys swung the bats well," Gonzalez said. "We had good hitting up and down the lineup."
The Phillies got their runs on Jimmy Rollins' RBI single in the third, Kevin Frandsen's pinch-hit sacrifice fly in the eighth, and Young's two-run homer in the ninth.
Earlier Saturday, Phillies pitcher Cliff Lee and outfielder Domonic Brown were named to the All-Star team. Lee, who is making his fourth appearance, is 10-2 with a 2.73 ERA. Brown entered Saturday batting .273 with 22 homers and 60 RBIs. He will be making his first All-Star appearance.
Braves closer Craig Kimbrel was selected to the team for the third straight year. He has converted 23 of 26 save opportunities and is 2-2 with a 1.72 ERA this season. First baseman Freddie Freeman is one of the final five candidates for the NL squad. Fans can vote online until Thursday.