A Spanish government statement said it was “hardly appropriate” for Queen Sofia, 73, to attend a lunch on Friday.
The UK and Spain have been in dispute over fishing rights off Gibraltar, a UK territory which Spain also claims.
Spain has also protested over a visit to Gibraltar by Queen Elizabeth’s son Prince Edward and his wife Sophie.
Prince Edward and the Countess of Wessex are to visit Gibraltar on 11-13 June as part of the celebrations to mark the 60th anniversary of the Queen’s reign.
Spain continues to claim sovereignty over Gibraltar, which has been ruled by Britain since 1713 under the terms of the Treaty of Utrecht.
Queen Sofia’s husband, King Juan Carlos, had already declined his invitation to the lunch at Windsor Castle on Friday.
He is recovering from surgery last month after he fell and broke his hip while hunting elephants in Botswana.
In 1981, the Spanish royal couple declined an invitation to Prince Charles’ wedding to Diana, Princess of Wales because they planned to visit Gibraltar as part of their honeymoon.
And a visit by Princess Anne to Gibraltar in 2009 sparked an official complaint from the Spanish government.
An additional cause of unhappiness for the Spanish royal household is the fact that the British regimental band of Gibraltar will be performing at the Diamond Jubilee, reports the Spanish news agency Efe.
A spokesman for the UK Foreign Office told the AFP news agency: “The visit was a private commitment and we don’t comment on private visits.”
The US House Ethics Committee has voted to release its report on former Republican Representative…
ABC News has agreed to pay $15 million to President-elect Donald Trump to settle a…
South Korea’s parliament has voted to impeach President Yoon Suk Yeol over his failed attempt…
Israeli war planes have carried out more than 100 air strikes in Syria on December…
President-elect Donald Trump has threatened to impose 100% tariffs on the BRICS countries if they…
Syrian troops have withdrawn from the city of Aleppo following an offensive by rebels opposed…