Part of the problem is the general incompetency and mismanagement of US public transit construction -- the costs are insane, even when compared to "socialist" "high-cost" union-heavy Europe.
This was a great read on why we get so little for our money: https://www.nytimes.com/2017/12/28/nyregion/new-york-subway-... - and it busts the common misconception that it's 100% because unions. (tldr: it's because politicians get rewarded for creating jobs (votes) and spending money on contractors (lobbying), and because we outsourced everything)