In sto you are a shareholder, you are getting share of your profit if company make some.
In ico, you have utility tokens that have value in the ecosystem. And even if that ecosystem get used a lot, that doesn't mean tokens will be valuable. So i would always choose sto's.
you are absolutely right the investment and STO will give the profits in like a shower system whenever the company that you are invested we getting profit you had a shower also but ICO is like more of getting the profit for your investment in a single time.