"At (the) meeting with the British Foreign Secretary, it was emphasized that British authorities' action against the tanker carrying Iranian oil was in violation of international law," ambassador Hamid Baeidinejad said on Twitter after being summoned in London.
"EU sanctions cannot be extended to third countries. Despite numerous threats by America, the tanker sold its oil at sea to a private company and has not violated any obligation," Baeidinejad added.
"The private company ... (which is ) the owner of the oil sets the sale destination of the oil," Baeidinejad told the state news agency IRNA.
Britain said on Tuesday Iran had sold the oil cargo of tanker Adrian Darya 1 to Syria, breaking assurances it had given over the vessel which had been detained in Gibraltar for a suspected breach of European Union sanctions.
Iran said on Sunday the tanker has delivered its oil after docking somewhere in the Mediterranean region.
The vessel, formerly named Grace 1, was seized by British Royal Marine commandos on July 4 on suspicion of being en route to Syria.
Gibraltar released it on Aug. 15 after receiving formal written assurances from Tehran that the ship would not discharge its 2.1 million barrels of oil in Syria.
But Britain's foreign office said in a statement on Tuesday it was clear Iran had breached those assurances and that the oil had been transferred to Syria.
"Iran has shown complete disregard for its own assurances over Adrian Darya 1," foreign minister Dominic Raab said in the statement.
"This sale of oil to (Syrian President Bashar al-Assad's) brutal regime is part of a pattern of behavior by the government of Iran designed to disrupt regional security."