For the cost and scope of your project I recommend MS Project. Personally I
dislike the software but many of your subcontractors will likely be using
it and the common platform will help all interact with little additional
If your project is not a run of the mill construction project I would use
Smartsheet and Basecamp. Combined these two platforms can have all the
power of Project and there is virtually no learning curve to start,
however there is a learning curve to extract their full power, especially
if a 20M project must land on time and within cost.
I do not know your level of expertise in PM but I am happy to talk more.