Bottoms up!
Bottom-up estimation is probably the hardest and most intensive estimation any technical project manager will ever undertake.
And unfortunately it is invariably and frequently wrong the moment the estimate is handed over to the stakeholders.
You have to spend an inordinate amount of time going over every task and every detail with rarely all of the tasks specced out well enough to estimate them, the people who will do the work unavailable or not even hired, and valuable budget being burned on a phase of the project that management will rarely see much value in.
And yet, bottom-up is still the best we’ve got to get anywhere close to what we need in terms of estimation.
Where it all goes really wrong is at the point when we cling to our rapidly becoming wrong project estimate because we spent so long making the estimate in the first place.