England have taken a 2-0 lead over Australia in the one-day series as Jason Roy scored 120 to set up a 38-run win for the hosts.
Roy marked his ODI return to Cardiff's Sophia Gardens, where he was dropped from England's Champions Trophy semi-final team a year ago, with his fifth century in his 60th match.
Jos Buttler, who captained the side after Eoin Morgan pulled out due to a back spasm, made an unbeaten 91 from 70 balls as England posted 342-8.
The impressive Shaun Marsh smashed 131 off just 116 balls in response, but his innings was not enough to see the tourists home.
Australia were ultimately bowled out for 304 as seamer Liam Plunkett (4-53) and spinner Adil Rashid (3-70) excelled in the final over to run through the opposition's tail.
England can wrap up a series victory when the two sides meet again at Trent Bridge on Tuesday.