Sounds like a solenoid. I would check the battery to make sure you are pulling good amps and then replace starter which typically has solenoid attached.
Cheers,
Roger Neef 95' 540 (haven't replaced starter yet but have on many other cars with same symptoms)