An intelligent charger with temperature compensation (to properly measure when the battery is full), is the best solution.
An expensive intelligent charging unit, costing more than it really needs to cost, comes with a two-wire probe and cable, and you attach the temperature probe to one of the battery terminals to pick up the temperature of the battery. This helps if the car was just on the road, the battery is hot, but the smart charger is cold and sitting in ambient air.
The purpose of a smart charger, is not to beat the piss out of the battery. It attempts to precisely fill the battery, and not a bit more. Some float at the end of cycle (13.5V), others completely disconnect.
Batteries do need the piss beat out of them occasionally. For example, if the acid "stratifies" in a flooded type battery, then "boiling" the battery causes the syrupy acid to re-mix and become more uniform.
With stratified acid, the layer of 12M sulphuric is where the plates "have their capacity", while a watery layer next to the strong acid layer, contributes nothing. A stratified battery no longer has the amp-hours.
I don't think a smart charger has a direct measurement method for detecting stratification. To the charger, the battery just seems "small" and "fills too fast". But the people who write the CPU code for the smart charger, they're pretty clever people and have figured out all sorts of stuff (they measure battery impedance at the beginning of the cycle, and flash the red light indicating the battery is duff).
The terminal voltage of a battery, changes with temperature, and that's why the intelligent charger works best if it knows the current battery plate temperature. If the thermistor is inside the charger housing, the only way the battery temperature matches the charger temperature, is if the car has not been driven for a couple days.
All intelligent chargers should do a good job, if the air temp is 25C and the battery temp is 25C, as that's the uncompensated reference point. Large deviations in temperature (charging at -20C), lead to charging errors if the temperature is not considered.
Paul