From the end of May through the end of June is the best time for a trip to St. Petersburg.
It might get really hot in July and August. Smog gets worse making it difficult and unpleasant to explore Moscow and St. Petersburg. Such a trip might even be dangerous for people with breathing problems like asthma.
Those who missed early summer should better wait for the Indian summer. With a bit of luck, one can enjoy a gorgeous September in Russia.
It is better to avoid travelling to Russia in October and November. Lots of rain and snow turn roads and even city streets into mud and slush. Cold winds blow through best clothing making tourists and residents chill to the bone.
Those who want to experience the real Russian winter shall visit Russia in January or February. While January can be relatively mild, it usually gets freezing cold in the middle of February. Snow and ice sparkle in the sun creating enchanting fairy-tail scenery.
April and March are similar to October and November and should better be avoided.