To get your head round CtrlA applying transforms, I think it helps to separate the ideas of an 'object' and its 'mesh' (vertices). You can think of the object as a vehicle for its mesh.
Here's an object (the yellow axes,) sitting on the World Origin. Its mesh is a cube.
The numbers show the coordinates of the mesh vertices.
(To visualize an object, as here, you can switch on 'Axis' in its Object Properties tab, Viewport Display panel.)
Now here's the same object, translated a bit, rotated a bit, and scaled in Y, in Object Mode.
All the vertex coordinates are the same as they were before! Their locations are measured along the object axes; in the Object Space. It's the object which has been transformed. The axes have been moved,rotated and scaled. See how the Y axis has been stretched. Measured along those axes, the vertices are exactly where they were before.
Changing the locations of the vertices with respect to the object is what you do in Edit Mode. In Object Mode, you transform the whole object, and the object carries the mesh along with it.
Here are the locations of the vertices in World Space, (along the eternally fixed World axes) That is: the object-space locations of the vertices, with the further transform of the object added in:
CtrlA applying (all) the transforms of the object is baking the transforms of the object into its mesh, and returning the object to the World Origin:
You can apply the transforms individually, too.. applying rotation will align the object to the world, leaving its location where it was.. applying scale will return the object axes to length 1, and compensate in the coordinates of its vertices.. applying translation will return the object to the World origin, leaving its mesh behind.