Both sides came into the fixture in good form. While the hosts have won three consecutive games in the Premier League, the Red Devils were unbeaten in eight domestic games.
The League Cup has traditionally been a competition where managers give minutes to squad players but Carlo Ancelotti started with a relatively strong team, with goalkeeper Robin Olsen the only non-regular.
It was pretty much the same for Manchester United, although Dean Henderson, Axel Tuanzebe, and Donny van de Beek got a chance to impress.
Given the form of both sides, as well as the attacking talent on display, fireworks were expected in the fixture. However, the game failed to live up to expectations, with niggling fouls and cynical tackles more rampant than goalmouth action.
Manchester United started brightly, with Seamus Coleman producing a stunning sliding block to stop Van de Beek after he had been played in by a Paul Pogba backheel in the 7th minute.
The Everton goalkeeper produced several saves to deny the visitors in what was a rampant start from the Red Devils. Having weathered the storm, the Toffees grew into the game and increasingly became more cynical in their approach.
The second half was more cagey, as both sides struggled to produce moments of brilliance in what became a full-blown scrappy affair.
Just when it looked like a penalty shootout was needed to decide the winner, Cavani stepped up with a stunning strike, while Martial added a second goal deep into injury time to seal the deal for Manchester United.
The victory means that the Red Devils progress to the last four of the cup competition. Meanwhile, Everton will hope to regain their mojo when they travel to Sheffield United on Boxing Day.
Here are five talking points from the fixture.
#5 Exciting Manchester derby awaits us in the semi-final
The draw for the last four was made in the immediate aftermath of the fixture, and it served an exciting clash as Manchester City would trade tackles with their city rivals.
A change to this season's format means that the tie would be decided in one leg, unlike previous campaigns where two-legged semi-finals were the norm.
Manchester United will be the hosts of the clash, with Old Trafford welcoming the Cityzens for the second time in two months.
The fixture will be played in January and unlike the last time both sides met in November - where they played out a stoic goalless draw - a winner must emerge on that day.
Awaiting on the horizon for the winner would be a clash with either Tottenham Hotspur or Brentford in the final - which was pushed from February to April to increase the likelihood of fans being in attendance at Wembley.
#4 Manchester United continue fine run of form away from home
One of the great anomalies of this season has been why Manchester United are unstoppable on the road, while struggling for consistency on their own turf at the same time.
Prior to their 6-2 decimation of Leeds United last weekend, the Red Devils had won just one of their first six Premier League games at Old Trafford, with the 6-1 defeat to Tottenham marking the nadir.
However, Manchester United were flying high on the road and are currently the only team to boast a 100% record on their travels in the league.
This victory over Everton means that they have now won 14 consecutive away games in domestic competition, extending their club record in the process.