As I arrived at airport, I went straight to the exchange office to exchange some money - euros to rubles. By location, I thought that the closest exchange office is the most secure one - and police is everywhere, so I took a glance to the display and did not notice that
1 euro = 30 rubles (to sell) and 1 euro = 42,3 rubles (to buy).
I exchanged 100 euros. My friend told me that I should stop transaction because they are cheating with a currency rate, and to ask for my money back, but guy who is working there said that transaction is over and that is it. My friend was right: In the next exchange office and many other offices we saw that
1 euro = 42,3 rubles (to sell)!!!
The guy who is working in the exchange office said that the rate is determined by their bank. That means, for every 100 euros they earn 25 euros (approximately) comparing to other offices, i.e. they take that money from tourists.
In my receipt it is written (in Russian, so I am not sure whether I will write properly in English): Financial standard (probably name of the bank) and name of the exchange office is: Express exchange or something similar.
Similar thing happened in the hotel: 1 euro = 31 rubles.
The ATM machine at Domodedovo airport directly before bagagge claim did not deliver Rubels. I watched a tourist trying to get money there. All finished normally, but just no money came out - the tourist was really devasted and I then of course did not use ATM machines in Moscow. In the city, it is very easy to change money everywhere - they show the current exchange for sell and buy of EUR and $ on LED displays outside their change locations. The difference between buy and sell is in the range of 5-10 kopek inside the city (e. g. 45.20 and 45.25 rubels for 1 EUR). At the airport the difference is quite high - so I would change at the airport only a small amount. As I had not too much EUR with me, I tried to use credit card whereever possible - all the smaller restaurants I visited accepted Visa.
Old tips are saying that you should bring new US bills (or EUR).
Fact is, this days there are so many ATM's everywhere (banks, hotels, metro stations, main touristic spots), and you'll always be able to withdraw some fresh Rubles.
So, lack of ATMs isn't warning any more !!!
Carefully check the money you're taking with you to Russia before departing. There are exchange stores everywhere in Moscow- they'll accept dollars, euros, pounds and other well-known currencies, but that doesn't apply if your bills AREN'T IN PERFECT CONDITION. Like, if your bill has a small stain or looks a little bit old or crinkled, or even if it is just slightly damaged, the exchange stores simply will refuse to change it.
If you wish to change your money in an exchange booth near metro station you are likely to be cheated. A person sitting in this exchange 'office' is separated from you with a bulletproof window. You put your money to the special box and shift the box to his side. He takes your money then calculates the amount of money he is to give to you in rubles. Takes the necessary sum and counts the notes, showing you that everything is ok. (i.e. you give him $100 and he shows you ~2800 rubles). After showing you the necessary sum he puts the money to that box to shift it back to you. Everything looks like OK. When the box is at your side take you take the money being sure that there's the necessary sum. WARNING!!! Count the notes again by yourselves!!! Right - the pile lacks one note of 500 rubles. The note IS in the box, so the man is not actually cheating. But it is not in the pile but in the far corner of the box which can not be seen well. BE CAREFUL
Go to an authorized cashier at a bank or at your hotel for money echange. DO NOT change money with anyone on the street. Chances are these people are thieves and it is illegal to change money with any authorized source. You can be tricked or out and out robbed if you do.
BRING CASH. I didn't bring any rubles thinking that I would be able to get money from the money machines/ATMs. No dice. I luckily had an American Express card and personal checks, and found an AMEX office, and they cashed my personal check (not without glares from the smug gun-toting security guards). I don't know why my cards didn't work in any ATMs, but my guess is to prevent fraud from overseas. It's possible that you need to clear it with your bank before you go to strange distant lands.
And this is a proper WARNING: apart from staying alert and beware of pick-pocketers as in any huge megapolice in the wold, be warned that if you decide to exchange USD in New (Novy) Arbat street, all exchange offices there don't accept banknotes with denomination less than $50 (don't ask me WHY, I don't know and suffered from this arbitrariness a lot of times myself); though you can give them for exchange $55, $60, $65, $70 etc. but one of the bills should be $50 or $100...
Do NOT accept foreign currency exchange offers from individuals hanging around airport and train terminals! They will cheat you no matter how closely you are watching them!