A basket of goods from the town’s Tesco store was £12.31 cheaper than elsewhere in the region.
However, groceries in Langholm and Gretna are the second most expensive locally.
The apparent differences in the cost of food shopping have been exposed by Dumfries and Galloway Citizens Advice Service (DGCAS).
Their Cost of Living: D&G Shop Check report compared the prices of 11 household basics, including bread and milk, at shops around the region.
It came to £9.95 at Tesco in Annan, compared to £20.38 in Langholm and Gretna.
The most expensive was £22.26 at the Co-op in Upper Nithsdale.
Researchers found that shoppers in some areas are paying up to 55 per cent more for the same items than people a few miles away.
And, in general, those in the poorest and the most rural areas are paying more than those in the better-off urban areas.
DGCAS chief executive Sue Irving said: “Local people will be shocked but possibly not surprised by what we have found in this study. It reveals that shops across Dumfries and Galloway are charging massive differences in prices for the same basic household goods, costing some families hundreds of pounds a year.”
During one week volunteers and staff visited 38 shops and supermarkets.
The average basket price across the region was £17.70 – but items were marginally cheaper in mid Annandale with Lockerbie and Moffat coming in at £15.61 in total.
Sue said: “When we compared the prices we were amazed at the differences.
“We think this is difficult to justify particularly when so many local people are struggling to make ends meet.”
The report is part of an ongoing study by DGCAS into rural poverty in the region. The next part will focus on the costs of rural transport.The shopping list: Loaf of bread; 500ml milk; 500g cheese; 4 x toilet rolls; 12 x nappies; 40 x tea bags; 250g spread; Packet of ham; Tin of baked beans; 1l of diluting orange; 6 x bananas