VISA. MasterCard, American Express, Discover and Eurocard are most widely accepted in major cities (including Moscow and St. Petersburg). There are also many places to get cash advances on credit cards these days. Still, travelers checks are a good security against theft. It is therefore a good idea to take along some larger denomination checks which you can cash if your money runs out. In this event, the better known checks like Amex. Citicorp and Visa are most recommended.
Take along plenty of one, five and ten dollar bills for cab fares and tips, and for changing into rubles. The dollar is so strong against the ruble that it is not likely you will need larger bills to change into rubles for day-to-day pocket money. For larger ruble transactions, i.e. at hotels, restaurants, you can pay with a credit card.
If you have an American Express card, take along a few personal checks. Your card and your personal check will allow you to get cash in a pinch at an American Express office or at DialogBank in the Radisson-Slavyanskaya Hotel in Moscow.
If you have a local contact in Russia, call or fax ahead and ask them to have a stack of rubles awaiting your arrival. Some travel agents can provide this service as well. This saves the need to rush to a bank or to wait until the next day for cash if your flight arrives late. Of course you can always change money on the street or with a taxi driver, but this is not recommended, if only for reasons of personal safety.