Counter Weights are used to provide offset forces in the flight controls. This provides controls with better "feel" and "feedback" forces as well as reducing the required pressure to move the controls. This is also done with "tabs" that use air pressure for the similar reasons.
Ballast is used to balance the airplane for better control and stability during flight. This is critical because its impossible to build an airplane that is perfectly balanced where you want the center of gravity to be. Many other factors, besides the actual airframe, affect the center of gravity: seating, installed avionics and other installed features or equipment. All of this must be taken in to account for the airplane to have an appropriate starting center of gravity.
I have flown numerous aircraft ( light aircraft as well as small to medium sized jets ) that required additional ballast to offset imbalances in cargo or where passengers where sitting or just to balance the aircraft better when it was empty or had equipment or seats removed or just didn't have any passengers at all. I would sometimes use 25 pound bags of "Lead Shot" used for reloading shotgun shells as ballast in the aft cargo hold ( again this was in smaller aircraft such as private jets ). this might be 100 - 200 pounds as far aft as it could be placed to provide as much leverage as possible, as needed.
As far as trying to keep an airplane as light as possible, this is true, however, it is so critical for the aircraft to be "balanced" and is so impossible to do this through structural changes that the cost in weight of the counter weights or ballast is not a factor.
Former Fighter Pilot and Private Jet / Corporate Jet Pilot