It's the keyswitch! They go bad and become intermittent. After replacing two starters and the same problem it's time to look elsewhere for the issue.
Step 1, check the battery.
Put the volt meter across the battery terminals and crank the engine, the voltage should remain above 10v when cranking. A good battery will stay closer to (or above) 11v.
Step 2, check all the grounds.
Put the positive lead of the volt meter on the battery negative terminal, and put the negative lead on the engine block. Crank the engine and watch the volt meter. The voltage should remain very low, under 1v. Do the same test from the battery negative to the body. If it is higher then 1v, you have bad ground connections from the battery to the engine and/or body. If you have very good grounds it will be closer to 0.1v when cranking.
step 3, keyswitch test (now we know the battery is good)
There is an easy way to check if it is the keyswitch. Put a volt meter on the black/white wire coming out of the keyswitch to the right of the steering column where it connects to the body harness. Try to start it and see if the voltage drops to almost 0 when you cry to crank it and hear the starter clicking, if it does drop under 10v when switched to the crank position you have a bad keyswitch. You can also do the same test at the starter itself on the blue wire that connects to the starter solenoid. If the voltage stays above about 10v when cranking, but the starter is not cranking, it could be a bad starter. Do the same test on the main battery input on the starter also. If the voltage stays above 10v when cranking on both wires going to the starter, and it's not cranking, then you know you have a bad starter.
EVERYONE needs a voltmeter!!! It the best tool you can buy for electrical issues.