An Italian navy officer has been arrested while being caught in the act of handing secret documents to a Russian military official, police say.
The men were stopped by military police on suspicion of serious crimes relating to espionage and state security.
The Russian, who reportedly worked at the Russian embassy in Italy, is expected to be expelled.
Russia's ambassador Sergey Razov has been summoned to the foreign ministry in Rome.
The carabinieri del Ros special operations group swooped on the men in Rome on Tuesday evening "during a clandestine meeting between the two, caught immediately after the transfer of a document by the Italian officer in exchange for a sum of money," a police statement said.
The Italian is described as being the captain of a frigate and the Russian officer's diplomatic status is currently being assessed.
The Russian embassy confirmed the involvement of a military attaché official but said any further comment was inappropriate, adding that it hoped the incident would not affect relations, Russia's Ria news agency reported.
Italy's Corriere website reports that papers seized in the naval officer's flat suggest he may have passed on Nato secrets, thereby placing other countries' national security at risk.
Russian decline in relations with Nato
Police moved in following a lengthy operation by Italy's Aisi domestic intelligence agency. Italian media are describing the incident as the most serious since the Cold War.
Relations between Moscow and Nato have deteriorated since Russia seized and annexed Ukraine's Crimea region in 2014. The poisoning of leading Russian opposition figure Alexei Navalny, now being held in a Russian penal colony, has also led to a decline.
Last week, Nato member Bulgaria expelled two Russian diplomats for "intelligence activity incompatible with diplomatic relations".
Italian fighter planes were involved in a Nato operation to intercept Russian planes over the Baltic Sea on Monday.