It's interesting that nobody says: good website.
By good, I mean, advanced, using latest technologies, schema org stuff, responsive design, optimized for mobile, lightweight to download and render quickly. Also, you need your visitors to spend more time on your page than they do on your competitor's. Just think about it, how to make them stay longer.
Some places to check: gtmetrix(dot)com, Google PageSpeed Insights.
I outranked a 10 years old authority site with a 1.5 years old one, with only a handful of links. Simple put, visitors started to pick mine from SERP over the authority one, because of better experience.