A key piece of my company's business (Solera Associates LLC - see http://www.pmlead.com) capability is its ability to help others accelerate their projects. How do we do it?
While we like Agile and Agile-like methods, such as Commitment-Based Project Management -- CBPM -- (see our LinkedIn Group at http://www.linkedin.com/groups?gid=1944064&trk=hb_side_g for various discussions on this approach developed at Intel Corporation) instead of the more traditional, process-intensive approaches, we also find that leadership plays a major role.
Processes can help you lead a project. Processes well executed will allow a team to succeed. By applying leadership we can be even more effective at getting the team to excel. As leaders we need to set the vision (leader's intent), communicate it, and enable our teams to execute within that intent. Processes take time. Leadership can shorten this time.
Traditionally project managers have controlled the details of the project, from the planning to the actual execution. CBPM encourages the owners and customers of the deliverables to execute more independently from the project manager and hold each other accountable. This process, coupled with leadership that not only encourages but expects and empowers this behavior, allows teams using CBPM to excel in their performance.
To answer the question in the title: projects take too long for a number of reasons but one of them is lack of the appropriate leadership needed to enable the team to succeed and reduce the time. Other reasons why projects take to long include lack of scope, requirements, plan, and execution clarity, among others. Leadership addresses all of these. CBPM addresses plan and execution clarity. For more details see our LinkedIn group mentioned above and my PM blog at http://www.pmlead.org.