Britain and America will never again invade foreign countries “in an attempt to make the world in their own image”, Theresa May has said in the biggest shift in UK foreign policy for more than 20 years.

Addressing US Republican politicians in Philadelphia, the Prime Minister pledged not to repeat the “failed policies of the past” in a clear reference to the invasions of Iraq and Afghanistan by Tony Blair and George W Bush.

Her comments are a repudiation of the doctrine of “liberal intervention” set out by Mr Blair in a speech in Chicago in 1999.