Burton ran the final 100 miles on one tank of fuel. He conserved gas with the help of several late cautions, including the final one with 12 laps to go.
On the restart, Burton overtook Kenseth, whose Ford Taurus apparently developed a flat tire just before the green flag dropped.
"I knew if we stayed out of trouble we could have a decent run, but I didn't expect this," said Burton, who led three times for 29 laps and averaged 92.342 miles per hour. "Maybe Matt Kenseth was better than I was, but you have to be in position to win and we were in position when it counted."
Kenseth quickly faded and finished 33rd, one lap down. He picked up 10 bonus points for leading a race-high 77 laps.
Driving a Dodge Intrepid, Burton opened a sizable lead on the rest of the field and was not threatened over the final laps, taking the checkered flag by 3.230 seconds over Jeff Green.
Burton earned $231,850 for his first victory at Loudon and fifth in his career. He returned to victory lane for the first time since winning the season-opening Daytona 500, having failed to post a top-five finish during that stretch.
In last week's Tropicana 400 in Chicago, Burton finished 41st.
Green won a late battle with defending champion Dale Jarrett to post a career-best finish of second.
"We had a car good enough to handle winning the race, but Ward did a good job of getting away from us," Green said.
Jarrett led from laps 234-258 and again from 269-283. After a pit sequence, he exchanged leads with Elliott Sadler before the next-to-last caution came out and Kenseth overtook him.
The top three finishers started no better than 30th.
Rusty Wallace led from laps 2-60 and even overcame a flat tire on lap 113 before finishing fourth. He had to tour the track for an extra lap as he could not get low to make the pit entrance at first.
Rookie Ryan Newman rounded out the top five.
Wallace jumped from sixth to fourth in the Winston Cup standings, but the top three remained unchanged. Points leader Sterling Marlin finished 14th. Mark Martin, who trails Marlin by 55 points, finished 16th behind rookie Jimmie Johnson, who is third in the standings.
The 300-lap race had 14 cautions for 77 laps, many caused by track conditions. Several drivers got into trouble in the turns of the 1.058-mile New Hampshire Speedway, where the surface was revamped.
The track was reconfigured in April, with a lane of new asphalt laid in the turns. Following the NASCAR Busch Series race here in May, problems with the surface in turns 3 and 4 forced officials to buff the finish off the new pavement and resurface it.
Nemechek exited his car and signaled Green to "use his head." There were three yellows inside the first 30 laps.
"I got a little headache, but I'm OK," Nemecheck said. "The 30 car got a little impatient. It's uncalled for that early in the race."
Stewart ran in the top five until he lost control in turn 4 of lap 121. Atwood was out after 257 laps, while Park managed to finish just a lap down despite contact with the wall.
Jeff Gordon also went high on the bank but kept it off the wall. Despite his effort, he faded to 29th.