4. Given in rectangle $A B C D$, $A B=72, A D=$ 56. If $A B$ is divided into 72 equal parts, and parallel lines to $A D$ are drawn through each division point; and if $A D$ is divided into 56 equal parts, and parallel lines to $A B$ are drawn through each division point, then these parallel lines divide the entire rectangle into $72 \times 56$ small squares with side length 1. Thus, the number of small squares that are internally crossed by the diagonal $A C$ (the interior of the small square contains at least two points on $A C$) is ( ) .
(A) 130
(B) 129
(C) 121
(D) 120
4. D.

According to the problem, establish a Cartesian coordinate system such that $A(0,0)$, $B(72,0)$, and $D(0,56)$. Then, $C(72,56)$.

Since $AC$ intersects with every horizontal line (including $AB$ and $DC$) and every vertical line (including $AD$ and $BC$), there are $57 + 73 = 130$ intersection points (including overlapping points).

The linear function representing line $AC$ is $y = \frac{7}{9} x$. Therefore, the coordinates of the overlapping points are $(9k, 7k) (k=0,1, \cdots, 8)$, which means there are 9 overlapping points.

Thus, there are $(130 - 9 =) 121$ distinct intersection points, which divide diagonal $AC$ into 120 segments, each passing through 1 small square.
Therefore, $AC$ passes through 120 small squares.