T-test should be applied whenever the variance (or standard error) is unknown and has to be estimated from the sample. This is important for small samples, where this estimate can be considerably imprecise - what is taken care of by the t-test. If the variance was known, one could use the z-test. For large samples, the t-test and the z-test give virually identical results, because the estimate of the variance is more precise. In practice, when the variance is not known (the very typical case in practice), one should always use the t-test, no matter what the sample size is.
@Razan Indeed T-test can be applied on a larger sample size (>50). In one of my papers (attached below), I've used independent samples t-test on a sample of 719 responses.