I've only been to London once and did a day tour to Stonehenge and Bath. My Husband and I have the wonderful opportunity to visit England again at the end of this month. We will rent a car to drive in the beautiful countryside, spending about 2-3 days in Bath. But, is there another, convienent, comfortable way to get to these places? We'll have our luggage with us until we return to London for the last few days.
I did all that on trains and buses. You can easily do London-Bath by train, also London-Portsmouth. Bath-Portsmouth is fine on the train (lovely white horse view on the way) but there's no first class carriage, so bring your own drinks and snacks. Buy a BritRail Pass, probably a London Plus which reaches to Bristol. It lets you hop on any train you want without paying the high ticket prices normally associated with not booking in advance. The first-class premium on the pass is only a token amount and in my opinion was well worth paying for a quiet car and free wifi, along with more comfortable seats.
For Stonehenge, take the train to Salisbury and then a bus to Stonehenge. (Watch for the tank crossing signs - a great picture opportunity.) After a time around the stones and a listen to the audio tour, we carried on by bus to nearby Avebury and enjoyed it a lot, before taking another bus back to Salisbury and rejoining the train system. All the schedules are online and they keep to them just fine.
In Bath, there is no left luggage at the station, but there is in a small internet café very close to it - the station people can direct you there. Or since you're staying a few days, you could head to the hotel first, get rid of your bags, and then go out to explore Bath, which is lovely.
If you're comfortable driving on the left, you can of course rent a car and do it all yourself, but I found the trains in the south of England to be frequent, comfortable, and (thanks to the pass bought while I was still at home) remarkably inexpensive.