There are several flights every day leaving from all three of Moscow's airports; they take just over an hour and prices start from around 3,000Rbl. From St. Petersburg there are typically two flights per day that take up to two hours and cost upwards of 4,500Rbl.
There are several daily flights to Nizhny Novgorod from Moscow as well as many overnight trains, although arguably the quickest and most comfortable way to arrive is by taking one of the express trains which travel between Moscow and Nizhny Novgorod in four hours.
Trains from Moscow to Nizhny Novgorod typically take between four and eight hours and usually leave from Kursky Vokzal in Moscow. The Sapsan train that connects Moscow and St. Petersburg at high speed also extends to Nizhny Novgorod, stopping at Vladimir along the way, and takes just under four hours to make the journey. It'll set you back a bit but is the fastest and most convenient way to make it to Nizhny Novgorod.
|Leaves Kursky Vokzal, Moscow||Arrives Moskovsky Vokzal, Nizhny Novgorod||Leaves Moskovsky Vokzal, Nizhny Novgorod||Arrives Kursky Vokzal, Moscow|
One more option is The Lastochka (Swallow) train which runs three times a day in each direction, leaving Moscow (Kursky Vokzal) at 11:00, 14:15 and 16:45, reaching the Volga city four hours later, returning at 09:45, 16:30 and 19:10 and terminating at Kursk Railway Station (Kursky Vokzal) at 13:45, 20:30 and 23:15 correspondingly. There are stops at the Golden Ring city of Vladimir and also Dzerzhinsk and Kovrov, and the full fare is 850Rbl one way.
From St. Petersburg the Volga train leaves daily from Petersburg's Moskovsky Vokzal at 16:50 arriving in Nizhny Novgorod at 07:36 the following morning. It then leaves Nizhny at 19:25 and arrives back in St. Petersburg at 9:45 the next day.
Once in Nizhny Novgorod you will find the city centre is very walkable whilst public transport in Nizhny Novgorod (served by a network of metro, trams and buses) is very well developed.