British Airways said it will no longer provide free snacks and food in economy class on short-haul and domestic flights.
The airline joins carriers like Ryanair, Aer Lingus and EasyJet which charge for sandwiches and other items.
BA is owned by IAG which also owns Aer Lingus.
It said that from January it would sell food from British retailer Marks & Spencer to economy class travellers.
Passengers travelling in the class above economy will continue to receive free meals, as will passengers on long-haul flights.
The change comes as BA's parent company IAG tries to cut costs at a time of increasing competition in the European short-haul market and will narrow the gap between flights offered by BA and its low-cost, no-frills rivals.
The airline said the switch to selling M&S food was driven by customer dissatisfaction with the its current short-haul economy catering.
"They've told us we are experts in flying and service, but when it comes to catering on short-haul flights, they want to choose from a wider range of premium products," BA chief executive Alex Cruz said in a statement.