An onboard upgrade is always nice on the rare occasion it happens
Destinations are put into catering bands, which each have a set category of snack/meal depending on the scheduled departure time - see the
stickied post at the top of this Flyertalk thread. For example everything gets a hot breakfast of some size, even a MAN/JER hop. However shorter flights (generally under 2 hours or so) only get cold meat cuts/salad or afternoon tea during the rest of the day.
The bands roughly correspond to the distance and flight time, but there is some fudging done for competitiveness. For example Barcelona (713mi from LHR) is in Band 2 so only gets cold stuff after breakfast, but Madrid (773mi) is in band 3 and thus gets hot meals all day, despite being a very similar distance and flight time - it's suspected that the regular travel by IAG managers on the route has some influence here! Similarly Milan (583mi) is in band 3, perhaps because they're competing with ITA who have a decent meal service.