Who were the last successful invaders of the British Isles?
The last successful invasion of Britain itself was in 1688. It was carried out by William of Holland, who invaded the island at the invitation of a cabal of opponents of the sitting king, James II. While James's supporters offered little opposition, William came at the head of a sizeable army composed mostly of foreigners, and his actions resulted in the overthrow and exile of James. William took the throne as William III. This event, known as the "Glorious Revolution," permanently established Great Britain as a parliamentary monarchy based on the rule of law. Like William the Conqueror, William of Holland came at the head of a large foreign army, and had a claim on the throne, both through his line and that of his wife Mary. William III's claim was a bit more solid than that of his predecessor of eight centuries earlier, and he came with the full cooperation of important Englishmen, but he was still a foreign invader.
If we are talking about invasions of England, the last successful invasion was in 1066. This was the famous Norman Conquest that was led by the man who is now known to us as William the Conqueror. Since then, there have been other invasions of England or Ireland, but none of them was as successful and/or as much of a foreign invasion as the Norman Conquest. For example, the Anglo-Normans invaded Ireland, but that can be seen as an invasion of one British isle by people from another. Henry Tudor (who became Henry VII) can be said to have invaded during the War of the Roses, but his actions can be better interpreted as him coming to take part in a civil war, not as a foreign invasion.
The most recent successful invasion by clear foreigners was the Norman Conquest in 1066.