Nach den Niederlagen seines Vaters gegen die Schotten nahm Eduard den Kampf gegen die nördlichen Nachbarn wieder auf. Er brach das Abkommen von Edinburgh und Northampton und erneuerte den englischen Anspruch auf die Oberhoheit in Schottland. Schnell gewann er Berwick zurück und erlangte einen Sieg in der Schlacht bei Halidon Hill (1333) gegen König David II. von Schottland. Danach verschaffte er seinem Gefolgsmann Edward Balliol die schottische Krone. Schnell jedoch erholten sich die Schotten unter Andrew Murray und besiegten in der Schlacht von Culblean (1335) Balliols Gefolgsleute, zu denen nur eine Minderheit des schottischen Adels zählte. Auch mit dem Einsatz großer Streitkräfte konnte Eduard die Schotten nicht besiegen. 1337 waren nur noch wenige Burgen wie Edinburgh, Roxburgh und Stirling im Besitz der Engländer. Zwar schloss Eduard 1357 den Vertrag von Berwick mit David II., der diesen zu seinem Vasallen machte, er konnte Schottland aber nicht mehr direkt der englischen Krone unterstellen.