Take the train.
For many Americans, flying straight to Moscow will be the most cost-effective way to get to Russia. Even if you can find one, domestic flights from Moscow to Sochi will be expensive. There should be ample space, however, on trains making the 28-hour journey south. And if you can manage to fly to Krasnodar, you'll be able to ride to Sochi in six hours.
Feeling more adventurous? There are also international train options from Kiev, Ukraine (30 hours of travel time), and Minsk, Belarus (34 hours). Don't let these large numbers dissuade you. Long-distance train travel in this part of the world is an adventure that, along with the Games themselves, may be one of the highlights of your trip. A final option is a fast ferry that runs from Trabzon, Turkey, to Sochi in about three and a half hours.