Milan and Florence seem the most straightforward bases since they have good transportation, food, and rainy day options. Plus, we'll be flying into Milan and out of Florence, so it makes sense to stay at least one night near each connection.
So the real question is the 3 nights in the middle. How would you allocate the 5 nights, if these are the options:
a) 4 Milan, 1 Florence
b) 3 Milan, 2 Florence
c) 2 Milan, 3 Florence
d) 1 Milan, 4 Florence
There'd be one day where we travel from Milan to Florence (by car or train), and then 3 full days for day trips. Another way of looking at the options would be :
a) 3 day trips from Milan
b) 2 day trips from Milan, 1 from Florence
c) 1 day trip from Milan, 2 from Florence
d) 3 day trips from Florence
Between Milan and Florence, which offers the most "bang for the buck" in terms of both day trips, and also the evenings after the day trips where we walk around town before and after dinner?