The average price of a litre of petrol on Monday was 139.46p, the Department for Business, Energy and Industrial Strategy said.
That is the most expensive since March 2013 and less than 3p per litre below the record of 142.17p set in April 2012.
Prices have risen by more than 26p per litre in the past 12 months, adding £14 to the cost of filling up a typical 55-litre family car.
The RAC has attributed rising petrol prices to several factors, including the increase in the cost of oil, September’s switch to E10 petrol and the impact of VAT.
It does not believe the recent panic buying of fuel contributed to price increases.
Meanwhile the average price of a litre of diesel on Monday was 143.19p, up by more than 2.5p from a week earlier.