Battery. Most likely cranks slow and dumps the memory on the first start. If it runs ok with no stalling after 20 minutes I would lean on the battery.