What’s missing is COMPETITION
Giving it to one company is just the same as having the government run it. No incentive to make it actually work effectively. Just pocket the money and move on. No consequences for that, either.
That just make the cronyism visible to one company.
Give it to many companies, the one that saves the most money and provides the best service gets a bonus for all the employees.
They’ve tried that. The rail fragmentation enabled dozens of companies to take on specific lines.
It failed.
Compare and contrast to British Telecom. They converted the state monolith into a private monopoly. BT operated for years without competition, services improved... But the advent of fibre broadband has flooded the market with competition forcing BT to up its game.