If you sell a one time license to somebody there is no incentive for the seller to keep making the product better, to care keep caring for you.
With a subscription model - especially a non-annually-paid one, they have to keep working to keep you.
It's also a way more sustainable business model and probably the only thing which can replace ads in practice. If a service like facebook gets a load of money out of you per year, there's no way they would switch to a one-time fee instead. If it were to be replaced by a subscription though, then you're still a constant money flow for them, which would work much better.