I've driven to both Manarola and Riomaggiore many times, both with car and motorcycle (no problem parking with a motorcycle), always coming from La Spezia. Riomaggiore is a bit closer, but not by much. From the station it's probably 20-25 min drive to Riomaggiore, maybe an extra 5 min to Manarola. Riomaggiore has a larger multi-story parking lot, you can see it in this image, the ramp and all the yellow buildings on the left are the multistory parking lot. However if you park there, and stay in Manarola, you still need to take the train. I've never experienced the train so full that I had to stand too close to other passengers, actually I think there were always seats available. However I know that ''sardines' type situations occur when cruise ships are in town at La Spezia and everybody on the ship goes there at the same time. Also, although I used to go practically every year, I haven't done so in over 10 years. However another thing to consider is that the road to those towns, especially the last mile or so, is very narrow (one lane wide although is a two way road), so you have to be skilled enough to negotiate the car in very narrow spaces or you'll scratch the walls along the way. It is up to you, but if you can do without a car, I would. The most logical choice is to travel by train there. Taxicabs from/to the La Spezia station are an option, and probably cheaper than the 25 or 30 euro a day for the parking. From the station to there is probably 10 miles (20+ min drive) so I doubt a taxi would charge more than 30 or 40 euro each way. But as I said the trains aren't always full. If you leave whichever town you are in the morning, before the Cruiseders arrive, trains shouldn't be full going to La Spezia. In my experience at that time it's mostly school kids going to school in La Spezia. In terms of towns where to stay, I never stayed overnight. I rented a vacation home every year in Forte dei Marmi, so I commuted the 45 min there when I needed, parked at Riomaggiore or Monterosso, then shuttle btw towns by train. To me all those villages look the same after a while. Corniglia is on the hill, so I didn't care much for it because I was interested in the beach, and the only town with a beach is Monterosso, which is also a bit larger and with more choice of restaurants. Riomaggiore was the easiest to reach for me, so that is where I preferred to park, although I've parked also in Monterosso, which has two large lots. If you come from Milan, then Monterosso is faster to reach because you exit the A12 freeway at Levanto. Vernazza is the most famous, and popular, but it's also the most crowded especially when the cruises are at La Spezia.
Do yourself a favour: Take the train!