CFrames just give you more information on the part.
CFrame has X,Y, Z, R00, R01, R02, R10, R11, R12, R20, R21, and R22.
RightVector tells you which way the X of the part is facing
R00 is the X component of the RightVector
R01 is the Y component of the RightVector
R02 is the Z component of the RightVector
UpVector tells you which way the top of the part is facing
R10 is the X component of the UpVector
R11 is the Y component of the UpVector
R12 is the Z component of the UpVector
ZVector tells you which way the Z of the part is facing
R20 is the X component of the ZVector
R21 is the Y component of the ZVector
R22 is the Z component of the ZVector
Say we have a part at 0,0,0 with no rotation and we printed the CFrame:
0 0 0 1 0 0 0 1 0 0 0 1
This is just the position, rightvector, upvector, and zvector printed together
Position = (0,0,0)
RightVector = (1,0,0)
UpVector = (0,1,0)
ZVector = (0,0,1)
Now lets say, we printed that parts position and rotation:
0,0,0 -- Position
0,0,0 -- Rotation
It doesn’t actually tell us which way is up, which way is down, and which way is left and right!
Rotation is more what angle off of perfect 90 degrees.
Where as CFrame tells you exactly which direction each side is facing and the position
hope that helps.