I don't like to upgrade units until I have to. In peacetime, there is no practical difference between a Spearman and Mechanized Infantry.
In my cities that are in 1-turn striking distance of my opponents, I keep everyone upgraded. Otherwise, units are upgraded on an as-needed basis.
The problem with disbanding old units is when an opponent launches a dishonorable surprise war, it may take me several turns to generate an appropriate reinforcement/counterstrike force. If the old units are available, I can just drop some cash and have a capable fighting force in 1 turn.
In my cities that are in 1-turn striking distance of my opponents, I keep everyone upgraded. Otherwise, units are upgraded on an as-needed basis.
The problem with disbanding old units is when an opponent launches a dishonorable surprise war, it may take me several turns to generate an appropriate reinforcement/counterstrike force. If the old units are available, I can just drop some cash and have a capable fighting force in 1 turn.