If anyone has a problem with their starter motor not working, like Rob, here are some ideas to help you diagnose the fault.
Intermittent faults are always the worst to work on.
If you have a voltmeter put it across the starter battery it should show around 12.5 V for a healthy battery. Old battery's that don't hold their charge or that have a high internal resistance can be a cause of starting problems. This is a problem that is especially common in the winter.
Check your Cali is not in gear and the handbrake is on.
Now get someone to turn the ignition switch to the starting position. When you have the fault (i.e. the engine is not turning over) does the starter solenoid click and does the voltage drop.
Another way of checking for the voltage drop, if you do not have a voltmeter, is to put your headlights on and check if they go dim.
If you get a voltage drop and the solenoid clicks but the starter does not turn over it is most likely the starter motor at fault, or its wiring, or connections.
If you get a voltage drop with no click it is most likely the starter solenoid or connections.
If you don't get a voltage drop the fault is in the starter circuit. In this case it could be various things like the ignition key switch, the immobilizer, the engine ECU, a loose damp or faulty plug or bad wiring in the circuit. The starter circuit can be temporarily bi passed by connecting a wire to the positive connection on the solenoid, then touching the the positive terminal of the starter battery with the other end of the wire. You should hear the solenoid click, then the starter motor turn over. If you need to start the engine just turn the ignition key switch on first, but do be careful make sure your Cali is out of gear and the handbrake is on.
Finally bad earth connections can also cause starter faults so check the condition of the earth connection to the starter battery and the earth connection to the engine. Check for corrosion and if necessary use a wire brush then petroleum jelly (Vaseline) to clean and grease the connections.
Hope this helps.
John