Government officials said the move was part of a pre-planned rotation and was meant to ensure a continued British naval presence in one of the most important but volatile oil shipping routes in the world.
The decision was announced days after the British government raised the alert level in the waters around Iran to its highest level.
A government spokesman said the HMS Duncan was "deploying to the region to ensure we maintain a continuous maritime security presence while HMS Montrose comes off task for pre-planned maintenance and crew change over".
The HMS Montrose was forced to warn off three fast Iranian gunboats on Wednesday that UK officials said were trying to "impede" the progress of a British supertanker through the Strait of Hormuz in the Gulf.
A source with knowledge of the matter said Duncan's deployment was being moved forward by a number of days and that the two ships will be stationed in the Gulf together during a temporary transition period.
The incident near the Strait of Hormuz occurred a week after UK Royal Marines helped the Gibraltar authorities detain an Iranian tanker that US officials believe was trying to deliver oil to Syria in violation of separate sets of EU and US sanctions.
A source said the UK government decided at the start of the week to raise the alert level for ships travelling through Iranian waters to three on a three-point scale.
The decision means that Britain views the security threat in Iranian waters for commercial ships as "critical".
Sky News television reported that HMS Duncan will not be part of the international military escort team for vessels in the Gulf being proposed by the United States.