I would say ICO is the whole event of selling and generating new coins/tokens, and it can include private sale, pre-sale, main sale.
A public pre-sale would by definition be an ICO. It's just a way to try and lure people's money into a project by marketing later price increases as current discounts. Most serious developers think ICOs are a joke. Take a look at how Ravencoin is currently being rolled out. That's the proper way to introduce a coin to the community. No pre-mine. No ICO. Just supporters and hard development work.
Hasn't Raven been mined for a week before release?