Dilhara Fernando took a career best 6-27 as Sri Lanka salvaged some pride in the series with an emphatic 107-run victory over England on Saturday.
Paul Collingwood's side drops to seventh in the ICC rankings as a result, despite winning the series 3-2 and the nature of the defeat will concern coach Peter Moores.
Having restricted the hosts to a below par score of 211 all out, with Chamara Silva top-scoring, England fell woefully short in the chase.
Only Alastair Cook (28), Kevin Pietersen (28) and Ravi Bopara (16 not out) managed to take England to any semblance of respectability in the end.
Sri Lanka came out firing early on after winning the toss, with Mahawaduge Perera (30) and Sanath Jayasuriya (26) putting on a quickfire 45 runs for the first wicket.
Wicketkeeper Kumar Sangakkara added another 26 runs, but it was Silva's contribution of 73 that proved decisive.
Fast emerging seamer Stuart Broad took three wickets at an economic rate, with Ryan Sidebottom chipping in with two.
Monty Panesar also took one wicket on his return to the side in place of Graeme Swann, but it was the Nottinghamshire spinner's batting capabilities that England could have done with.
Opener Phil Mustard, Collingwood, Owais Shah, Broad, Sidebottom, Anderson and Panesar all failed to get into double figures in the reply, and it was the failure of the batsmen who got in to make the most of their scores that cost them.
Seamer Fernando was the man to cause the majority of the problems, employing his slower ball superbly to beat his previous best haul of 4-24 against Bangladesh.
Chaminda Vaas and Lasith Malinga also chipped in with two wickets apiece, as England slumped to 104 all out - their eighth lowest total in one-day international cricket.