Milan made it two wins from two to open the Serie A season, beating Venezia 2-0 at San Siro on Friday night, and the pattern of the game repeated the opening round almost beat for beat: over 60 minutes to break the deadlock, then a substitute changing everything as Alexis Saelemaekers slipped Goncalo Ramos in for the striker's first goal for the club.
The scoreline flattered neither side into a false picture. Milan built the chances they needed to break a stubborn opponent down, and the interesting part is how they did it against a Venezia side set up specifically to frustrate them. Rohit Rajeev's breakdown of the game explains the mechanisms behind both goals, and the one problem that stopped this being a more comfortable evening.
Everything good in possession ran through Luka Modrić. Whenever the Croatian had the ball, Milan formed a staggered vertical line around him with minimal distance between players, handing him a spread of short options and inviting quick one-touch combinations through the centre. The tight spacing pulled players into rotations and let Milan progress through the middle rather than around it, a simple structure built to get the most out of a midfielder who dictates on contact.
Venezia's answer was a 5-3-2 mid block that lived on horizontal shifts. The moment Samuel Chukwueze took possession out wide, the near-side wing-back, centre-back, midfielder and forward all jumped, collapsing a 4v1 around him to isolate the winger and force the turnover. It was a deliberate trap, funnelling Milan into wide areas and swarming them there.
Milan's counter was to bait the press and then punish the spaces it opened. Against Venezia's man-marking, Yunus Musah and Cissé used coordinated counter movements: Musah dropped towards Gila on the ball while Cissé ran the other way towards goal, dragging his marker with him and prising open the gap between Venezia's second and third lines. That seam was the route through.
The same organisation showed up without the ball in smaller moments. On one Venezia throw-in, Milan marked man for man with Modrić as the free man, overloading the throw zone while Akor Adams sat as a second target. Venezia went to Adams, Milan read it, intercepted, and turned defence into possession instantly.
Against the settled mid block, Milan built diagonal passing lanes to pull it apart. Musah, Ruben Loftus-Cheek and Chukwueze formed a clean staggered shape, an Escadinha, giving the man on the ball several forward and diagonal options at once and making it hard for Venezia to stay compact.
The one clear flaw came out of possession. Milan's press was disorganised, with the first line and the two behind it failing to move together, and the gaps between them gave Venezia room to play out and progress. The lack of synchronisation made the whole structure easy to bypass, and it is the obvious thing to tidy before a sharper opponent exploits it.
Both goals grew from second balls and tight spacing. For the first, Bella-Kotchap's failed clearance dropped to Saelemaekers, who took on Schingtienne in a 1v1. Busio tracked back but drifted centrally towards his own goal, leaving a gap outside him, and Ramos held level with Bella-Kotchap until the exact moment Saelemaekers was ready to play the pass. Then he attacked the space behind Schingtienne, Busio could not recover, and the striker was in. It was a No.9 timing a run rather than betraying it early.
The second followed the same logic. Milan flooded the ball side as the goal kick dropped, Pavlović won the aerial duel, and the short distances let them combine at speed. Ramos received square on with lanes open around him, Marko Jashari read the picture and burst from midfield, Saelemaekers played the one-two, and Jashari was through on goal.
Two goals, two variations on the same idea: overload the ball side, win the second ball, exploit the short distances. The press is the piece that still needs work, and with the attacking framework already clicking this early, that is a good problem for the coaching staff to be left holding.