If you are interested in St. Petersburg then I can recommend
RussianAdventure.
I spent a great 2 weeks in Russia. Visiting all the famous places in St. Petersburg, together with a few off the beaten track ones, plus had some days at an authentic Russian dacha in the countryside.
The guide Tatiana is super. Fluent English speaker and more interested in you having a good time than telling you endless facts and figures. That said if you're bothered about such stuff (for me it's just boring) being a licenced guide with loads of experience she can tell you all sorts of useless info.
My personal recommendation is to visit the small Kirov museum. It's dedicated to one of the main local leaders during the Soviet period. It makes a nice contrast to all the grand palaces - and throws some light on the ideals the leaders at the time had.
I've been to Moscow, but in my opinion it's not any near as beautiful as St. Petersburg, but I guess you will want to go anyway. Can't recommend a guide as I sort of did it myself - it was real pain getting into the Kremlin as an independant tourist and not part of a group. Not at all setup for independant tourists, but that's Russia. No service culture.
Oh, finally if you're going further afield I'd suggest Yaroslavl. Small historic town - part of what they call the golden ring. Visited there with a group of friends some years ago. Beautiful place. Well worth a visit.
Good luck and have a great time.