The win gives hosts England a 3-0 lead in the five-match ODI series against Pakistan. Alex Hales hit 171, the highest individual limited-overs score by an England batsman.
England set a new world record in the One Day International (ODI) format by scoring a total of 444/3 as they thumped Pakistan by 169 runs at Trent Bridge, Nottingham on Tuesday
The win gave England a 3-0 lead in the five-match ODI series against Pakistan.
Jos Buttler struck the last ball of the innings for four to take England past Sri Lanka's 443/9 against Netherlands in July 2006.
Hales plundered 171, the highest individual limited-overs score by an England batsman, before Buttler reached his 50 off 22 deliveries, another record for his country.
The hosts passed their previous highest total of 408/9 made against New Zealand last year, while captain Morgan got to his 50 off 24 deliveries as he and Buttler shared an unbroken fourth-wicket partnership of 161.
"This is a special feeling for us especially as we are an improving team," said Hales, referring to England's record score.
The opener flayed four sixes and 22 fours in his 122-ball knock to surpass Robin Smith's 167 not out against Australia in Birmingham in 1993.
Caught off a no-ball on 72 and dropped on 114, the 27-year-old right-hander passed Smith's score by pulling Hasan Ali to the mid-wicket boundary.
The bowler trapped him leg before wicket with the next delivery to end a second-wicket stand of 248 with Joe Root, who fell soon after for 85, but the pain was far from over for the Pakistan bowlers.
Buttler hammered six sixes and three fours to get to his half-century and finished 90 not out off 51 balls while Morgan ended on an unbeaten 57.
Hales and Root's partnership was also England's third-highest in one-day internationals.
Pakistan in reply were bowled out for 275 in 42.4 overs with paceman Chris Woakes the chief destroyer, taking 4/41.
Opener Sharjeel Khan hit 58, but wickets fell at regular intervals until number 11 Mohammad Amir smashed 58 in 28 balls to share an unlikely last-wicket stand of 76 with Yasir Shah on 26 not out.