I work in a multi-disciplinary engineering firm. In the past, the project managers were typically promoted from the senior engineering ranks (like a lead mechanical engineer). About 5 years ago, the company decided to create a separate discpline for project management. So graduate engineers would go straight into assisting project managers, and then becoming one themselves without ever working on a project as a discipline engineer.
Now we have to deal with project managers who've never actually worked on a project and don't understand how projects really get done. They only know how to manipulate cost and schedule spreadsheets and set unrealistic milestones.
The best project managers I've worked with have had extensive experience working on projects in their discipline, then supplemented these skills with an MBA or similar such management training.