Tallinn is fun to walk around for a day. The old city has kept its look so it's very picturesque. Hilly, too, but that makes it all the more fun in my opinion.
Helsinki actually feels like a US city. It was only expanded in the 1800s, so it has a much more recent look and feel. We only did a morning tour, so we didn't spend a huge amount of time there.
St Petersburg is great, but the visa issue makes it hard to do without a tour. The Winter Palace and Hermitage, all of the cathedrals, and nearby with the Peterhof and Puskin and so forth. A lot of it is crowded because they're major sites, but still really cool stuff to see. We were there on a tour, so I can't say much about walking around or anything.