England are one win away from a 5-0 ODI series sweep of Australia after another comfortable cricket victory on Thursday with 32 balls to spare.
The top-ranked hosts beat Australia by six wickets in the fourth one-day international at Riverside Ground to take a 4-0 lead.
England reached 314-4 in 44.4 overs in reply to 310-8 for Australia, who won the toss and chose to bat.
An opening stand of 174 between Roy and Bairstow kick-started England's second highest successful one-day international run chase, before Buttler joined in with a remarkable 28-ball 50.
England followed Tuesday's world record 481-6 at Trent Bridge by demonstrating it can be equally unstoppable in the chase.
Finch's 11th ODI century, and sixth against England, and Marsh's second in three innings underpinned the total for Australia, which has been depleted by a number of key absences.
Willey took the last four wickets, including three in one over, as Australia stumbled from 296-4 at the start of the 48th over to 310 all out.
The fifth ODI is on Sunday at Old Trafford in Manchester.