The league leaders stuck with the same eleven that did duty over Lazio last Sunday, whilst Milan featured without Ismael Bennacer who picked up an injury in the UEFA Europa League in midweek.
Inter showed their intentions five minutes in when Romelu Lukaku worked an angle to allow Lautaro Martinez to head his side in front after the host failed to clear their lines.
It should've been two for the Nerazzurri nearer to the half-hour mark following a low ball from the left-side by Ivan Perisic, but Lukaku couldn't connect.
Martinez could've gone into halftime with a brace from a loose ball off Milan goalkeeper Gianluigi Donnarumma following a low shot from Perisic, but the Argentine forward dragged wide.
Inter still created more clearer openings in the final minute of the half after Milan Skriniar directed a free-kick from Christian Eriksen onto the roof of the net.
The Rossoneri were out flying in the second half, as goalkeeper Samir Handanovic pulled off a double save to keep out Zlatan Ibrahimovic from a succession of headers in the area.
Antonio Conte's side son regained control and double their lead 12 minutes from the break when Martinez got in the centre of the area to finish off a cutback from Perisic.
Milan's nightmare worsened in middle of the second half after Lukaku beat Franck Kessie to a looping ball to fire in from the cusp of the six-yard area.
The Nerazzurri brought on fresh faces to help preserve the lead in Matteo Darmian, Roberto Gagliardini and Alexis Sanchez.
However, the Rossoneri failed to launch a turnaround as fulltime loomed therefore allowed Inter to go four points clear at the top of the table.