The Lancastrian took 4-18 as Sri Lanka slumped to 121 all out chasing a revised target of 232 in a rain-shortened match.
England made 229 in their 32 overs after a storm halted play for three hours and Sri Lanka's target was subject to a Duckworth Lewis amendment.
Anderson's opening spell of 3 for 14 from four overs knocked the stuffing out of the Sri Lankan top order and their innings never recovered.
Sanath Jayasuriya - in his final one-day international two days before his 42nd birthday - was snared by a sharp catch from Eoin Morgan in the gully off Bresnan for just two although he did manage a wicket in England's innings.
Anderson turned fielder to take a superb diving catch at midwicket to remove Angelo Mathews and an easier chance off Graeme Swann to dismiss Jeevan Mendis and Sri Lanka had slumped to 57 for six.
The Lancastrian, closing in on 200 one-day international victims, returned to claim the wicket of Nuwan Kulasekara.
From then on there was no way back for the tourists despite Lasith Malinga and Suraj Randiv throwing the bat late on for a record ninth wicket partnership, 52, for Sri Lanka against England.
Swann finished off the innings, ending with figures of 3 for 18. Thilina Kandamby hung around for 19, made off 48 balls, but lost patience eventually and skied a ball from Jade Dernbach to Stuart Broad at mid-off to give the Surrey pace bowler a second wicket on his one-day international debut.
Craig Kieswetter was the mainstay of the England total hitting two sixes and four fours as he passed 50 in one-day internationals for the third time before holing out to the first ball of Randiv's second spell for 61.
Morgan chipped in with 45, Kevin Pietersen 26 and Jonathan Trott 23 with Malinga picking up three wickets including two late on.
England were on course for a much bigger total when Kieswetter and Morgan were at the wicket but their scoring rate slowed until a late flurry from Bresnan, who hit Suranga Lakmal for three successive fours in the penultimate over and Broad.
Bresnan, recalled to the squad after a calf injury, gave the innings a much-needed shot in the arm when it looked like petering out with England's big hitters back in the pavilion.
Pietersen put on 56 for the third wicket with Kieswetter before hitting a Jeevan Mendis long hop, straight to mid-on.
Morgan hit six fours in his 35-ball stay but Ian Bell could not find the golden form he displayed in the recent Test series.
Alastair Cook, in his first game in permanent charge of England's one-day side, was out caught behind down the leg side for just five before the rain came.
The teams now head to Leeds which will stage the second match of the series on Friday.
SCORECARD (32 overs)
A Cook c Sangakkara b Malinga 5
C Kieswetter c Lakmal b Randiv 61
J Trott lbw Lakmal 23
K Pietersen c Dilshan b Mendis 26
E Morgan c Kandamby b Lakmal 45
I Bell lbw Jayasuriya 12
T Bresnan lbw Malinga 23
S Broad c Kandamby b Malinga 13
G Swann not out 2
Extras: (1b, 7lb, 10w, 1nb) 19
Total: (8 wkts, 32 overs) 229
Did not bat: J Anderson, J Dernbach
Fall of wickets: 1-6 (Cook), 2-53 (Trott), 3-109 (Pietersen), 4-142 (Kieswetter), 5-175 (Morgan), 6-179 (Bell), 7-226 (Bresnan), 8-229 (Broad)
Bowling: Malinga 7-0-40-3 (1nb), Kulasekara 6-1-31-0, Lakmal 7-0-52-2 (4w), Jayasuriya 6-0-46-1 (2w), Randiv 4-0-34-1, Mendis 2-0-18-1
S Jayasuriya c Morgan b Bresnan 2
T Dilshan c Bresnan b Anderson 1
M Jayawardene lbw b Anderson 5
K Sangakkara c&b Anderson 4
T Kandamby c Broad Dernbach 19
A Mathews c Anderson b Dernbach 16
J Mendis c Anderson b Swann 9
N Kulasekara c Cook b Anderson 5
S Randiv st Kieswetter b Swann 24
L Malinga c sub (Bopara) b Swann 26
S Lakmal not out 0
Extras: (2lb, 8w) 10
Total: (10 wkts, 27 overs) 121
Fall of wickets: 1-2 (Dilshan), 2-6 (Jayasuriya), 3-14 (Jayawardene), 4-15 (Sangakkara), 5-40 (Mathews), 6-57 (Mendis), 7-65 (Kulasekara), 8-69 (Kandamby) , 9-121 (Malinga), 10-121 (Randiv)
Bowling: Anderson 5-0-18-4 (1w), Bresnan 6-0-26-1 (5w), Broad 6-0-32-0 (1w), Dernbach 5-0-25-2 (1w), Swann 5-0-18-3