Extended crank is often caused by a slow buildup of fuel pressure, often due to a restricted filter, weak pump, very leaky drainback valve, or anything else that causes the pressure to fully bleed down and not come back up promptly during priming.
Try this: Turn the ignition switch to RUN without hitting START. Wait two seconds. Turn to OFF, then immediately repeat above several times finally hitting START at the end of the two second interval. If it fires immediately, you know you've got a leakdown and priming problem.
Also (separately), try cracking the throttle 1/4 way when you try starting the engine. If it fires right away, your IAC valve is sticking.
Steve