À la mort de Robert , en 1329, son fils de cinq ans David II lui succède. Sa minorité est marquée par plusieurs invasions anglaises ayant pour prétexte l'installation sur le trône d'Édouard Balliol, le fils de Jean. Malgré leurs victoires à Dupplin Moor (1332) et Halidon Hill (1333), les Anglais ne parviennent pas à assurer de manière définitive la couronne à Balliol, et Édouard III se désintéresse du sort de son protégé lorsque la guerre de Cent Ans éclate. Rentré d'exil en 1341, David II envahit l'Angleterre en 1346 pour venir en aide à son allié Philippe VI de Valois. Son armée est écrasée à la bataille de Neville's Cross et il est fait prisonnier. Durant ses 11 années de captivité, son cousin Robert Stewart assure la régence.