Yes I agree, the espionage costs are ridiculously high. I've got a mod going with reduced espionage costs, among other changes. It's what I'm calling the martial law mod since I added that new government type, but there are some other significant changes. Anyways, here is the seciton from the readme pertaining to reduced espionage costs:
Espionage cost reduced
Sabotage production base cost reduced from 10 to 3
Steal plans base cost reduced from 10 to 3
Steal technology base cost reduced from 10 to 3
Investigate city base cost reduced from 10 to 3
Initiate propaganda base cost reduced from 100 to 50
Expose enemy spy base cost reduced from 80 to 50
Notice that the plant spy cost is not reduced, that is reasonably priced.
In the stock game, espionage is too expensive, and civs are far too sensitive and willing to go to war over spy issues. IRL, spies are routinely caught all over the place, including spies spying for the US and USSR during the Cold War, and it doesn't even come close to precipitating a war. In fact if the game was set up so that attempting to plant a spy and exposing a spy NEVER caused a war, that would be fine with me. It would be better if the civ catching your spy, or having their spy caught just downgrades in mood a notch or two (e.g. from "polite" to "annoyed"). Sabotage production missions should still cause a war if the target is important enough and relations are already strained.
If the game designers are in the frame of mind to make some changes to the way espionage is done, it might be nice to be able to queue up projects for your intelligence agency like you do production projects, and give it a regular budget. The queue would say, like the production queues, "such and such will be done in XX turns", then when the mission is attempted report the results (e.g. "our sabotage mission in berlin was unsuccessful, our people are complaining that we are throwing money down a rat hole" hehe or "our sabotage mission in berlin was successful, money well spent!").