Simply: Tax money is wasted. Already rich investors end up enriching themselves further, tax money ends up in the taxes of the rich instead of improving the life of the poor.
Sometimes it makes sense (see economies of scale), but often it does not, because the private contractor has to design one system that works everywhere, and has to deal with a lot more complexity due to that than a local system. Often expenses also occur elsewhere that wouldn’t in a local system.
And paying out to investors is also a common example of additional expenses. Especially if the state has to provide a guarantee the company will be a specific amount of money in profit from the riders of the project.
That’s also why in Germany right now there’s lots of protest against privatizing the Autobahn.