re: "which is better milestone or fixed?"
The word "milestone" refers to a single milestone within a fixed-price contract.
A milestone is one step, with a specified amount of money funded in escrow - an amount of money the freelancer is paid once that step is completed.
A fixed-price contract may have one or more than one milestones.
When people ask the question about "which is better," they often are asking about which of the two main contract models is better. The correct phrasing of the question is:
"Which is better, fixed-price or hourly?"
For the answer to that question, you may read here: