I recently replaced a solenoid that worked most of the time but occasionally would only click and not turn the starter motor.
Being an inquisitive soul I took it apart to see if I could spot the problem.
Nothing obviously wrong with the exciter coil and the "bottom" of the solenoid.
The coil is energised by the starter switch and pulls the plunger down toward the steel disc. I tested the plunger that sits inside the coil and it was working fine.
The real business end of the solenoid is where the current coming into the solenoid from the large red battery lead is effectively short circuited to the outgoing terminal where the current is carried by the large black lead to the starter motor. The contacts are the largish chunks of copper in the left-hand side of the picture below.
This is what it looks like totally dismantled. What happens is:
1. current from the starter goes through the exciter coil and pulls plunger 1 downwards.
2. this allows spring 2 to push contact 3 to push against terminals 4 making the circuit to the starter motor.
It is easy to see why this solenoid failed. There is quite severe corrosion on the left-hand terminal contact face which would not have allowed enough current to flow to turn the starter motor over. It looks "burnt"!
I guess if you were on a tight budget, it might be possible to clean up the contact faces and put the solenoid back together again but it might be difficult to repress the cover on and for it to be 100% water tight.
I hope this has been of interest and helps to explain why solenoids fail.