I don’t think Asana and MS Project are targeted to be used in the same way or for the same purpose.
MS Project - Is mainly setup for a Project Manager to establish a plan of what should happen during a project life cycle at a specific point in time and then they manage people/resources to deliver the outcomes of each tasks.
Asana - Is mainly setup for a team of people to collaborate and deliver a set of outcomes together. An those outcomes are grouped into Projects to make it easier to collaborate on a single set of ideas at a time.
So the set of functionality each product have is geared to different outcomes. So things like constraints, levelling, fine grained estimates and scheduling methods are in MS Project but not in Asana. Whilst Conversations, comments, Feedback options, notifications are in Asana.
There are tools like Instagnatt which helps make Asana look like a Gantt chart similar to MS project. Asana does not really play in that space.
Hope this helps.
ps. I would use Asana in a heartbeat over MS Project.