Economics. When you have a capitalist system, you have prices. Really, prices are an agent of information. It tells you how much a given thing is worth at a given time.
Say you were to build a stretch of train track between two cities. And there were two possible routes you can choose. Route 1 goes through a mountain and requires a lot of engineering work, but much less unskilled labour. Route 2 goes around the mountain, so it requires a lot of unskilled labour but not much engineering.
Which route do you choose?
In a capitalist system, it is easy. You look at the prices for engineering labour and add it to the price of the unskilled manual labour.
In a socialist system, you would not have that information and instead, you would give your best estimate to which is better.
But lets say that an earthquake has happened in the other end of the country, and they really need engineers to rebuild all their houses, and at the same time, the planning commitee has made a decision to increase the production of coats, because the winter is expected to be cold. This requires more coat factories to be made, and in turn requires more engineers. This increases the demand for engineers, making their time more valuable. But the planning comittee cannot know every single little factor that increases or decreases the demand for engineers. But it is clear here, that under these circumstances, choosing route 2, with the much less engineering work is smarter, because it doesn't take up time from the engineers who have a lot of other important work to do.
So things that happen in the marked, which is very very difficult to foresee, has an effect on the value of things. Through prices, and thereby thousands of constant negotiations, the information of the need of engineers passes quickly through society. In this case, the wages for engineers would go up, because many people would demand their work.
Thus, a free market is much more efficient in supplying information.