The last successful invasion of England was that by the Normans in 1066. Prior to that, England had been successfully invaded by waves of Angles, Saxons, and Jutes from the Continent, and before that, the Romans.
After 1066, no one from the Continent successfully invaded England. These include Hitler, Napoleon, the Spanish Armada, and possibly the French during the 100 years war. "Native" invaders like William and Mary, (the latter of whom was English) or Henry Beaufort or the Barons in the First Barons War did sometimes succeed.
The key factor appears to be that in the second millennium, England had a "critical mass" of naval clout to defeat the various would-be foreign invaders, but this was not true in the first millennium. If so, what would be the key ingredients of this naval "critical mass?" What caused this change? Was it due, for instance, to the greater efficacy of ships built in the second millennium in patrolling the waters around England?
Or put another way, why were first millennia foreigners more successful in invading England, given the same weather, and more primitive ships (unless the argument might be that the weather changed and we had e.g., a new ice age in the second millennia and not the first).