Devices that did not succeed: Select this if you only want the task to run on all devices that didn't complete the task the first time. This excludes devices that have a Successful state. The task will run on devices in all other states, including Waiting or Active. Consider using this option if you need the task to run on as many unsuccessful devices as possible, but you only need the task to complete successfully once per device.

Not clear to me if this means that system will try and try and try infinitely or there is some threshold or what?

To add to MarXtar reply, another option, if you want the clients to try until they get the install, is to set the task as either a "policy-supported push" or just "policy" and make it required. This will ensure that all clients will attempt the install when they come online