Engine cranks, won't start until towed

I have a 1997 GMC Safari van with 175,000 miles on it. One month ago it wouldn’t start. It would crank and crank but just not fire. When I turn the key I can hear the fuel pump start. I have other transportation available, so I just tried it a couple of times a day with the same result. Some history: about 5 months ago I had the fuel pump replaced. Finally I gave up and had it towed to the shop that had replaced the fuel pump. After it was unloaded from the flatbed, the mechanic tried to start it and it started normally. Since it started, I had an oil change done and had them check all the connections. Afterwards it started normally. I drove it for a few days with no problem and then one morning the same problem- cranking but not starting. Being stubborn, and with tight finances, I tried to start it every day for a week. Same symptoms. Finally today I had it towed to a different mechanic recommended by a friend. Of course, when it was unloaded from the flatbed it started right up. Any theories?

You must have a loose connection somewhere that makes contact when the car gets bounced around. Rather than throwing parts at the truck and see whether that fixes it, you need to figure out what it is missing when it doesn’t start.

The easiest thing to check for is spark so get an inline spark tester from HarborFreight. Since you have another vehicle to drive, put the thing in series with any sparkplug. Since the vehicle is unreliable, don’t drive it but try to start it periodically. When it starts, notice what the tester looks like when it does fire so you know what to look for. The next time it doesn’t start, have a helper start the truck while you watch whether the thing lights up.
If it doesn’t light up, you’re having some sort of ignition problem.
Report back.

@94z28 on that 4.3 V6 the coil wire sometimes arcs against the brackets next to it.

My suggestion is to remove the center console and take off the doghouse. Close the door so that it will be relatively dark inside. Crank over the engine and see if that coil wire is arcing.
Once you have the doghouse off, it would also be a good time to inspect the plugs, wires, cap, rotor, and hook up a fuel pressure gauge.
Occasionally the distributor gear itself will wear. If you take off the cap, try to rotate the rotor by hand. If there’s a lot of slop, it may be worn.
Even if it does start, you should hook up a spark tester. The spark should be bright blue. Anything less than bright blue could mean a weak coil.