Les forces britanniques restées au Portugal après le départ du général Moore pour la malheureuse campagne qui se conclut avec la bataille de la Corogne, se sont pas préparées pour affronter les Français, de par leurs effectifs mais aussi le caractère de leur commandant, John Cradock. Des renforts sont donc envoyés ainsi qu'un nouveau commandant : le lieutenant-général Arthur Wellesley, le vainqueur de Vimeiro. Wellesley arrive à Lisbonne le 21 avril 1809. Son plan consiste à avancer avec le gros des troupes en direction de Porto, aussi rapidement que possible, de manière à atteindre cette ville avant que Soult puisse réunir son armée. De là, il envisage d'envoyer une colonne sous le commandement de Beresford traverser le Douro à Lamego afin de s'unir aux forces de Silveira et couper ainsi la retraite de Soult à travers le Trás-os-Montes en direction de Salamanque.