I know that a linear operator is diagonalizable if and only if its characteristic polynomial splits and for each distinct eigenvalue the dimension of the associated eigenspace is equal to the multiplicity of the eigenvalue. Is the existence of an orthonormal basis of eigenvectors of the operator equivalent to these conditions?

I feel like this is true because (non-technically speaking) if the characteristic polynomial didn't split, there wouldn't be enough eigenvectors for the basis, and since we have (for an n-dimensional vector space) n linearly independent eigenvectors, in the case where an eigenvalue has multiplicity greater than 1, the dimension of that eigenspace must be equal to the multiplicity, since the eigenvectors are linearly independent and thus some subset of them will form a basis for any given eigenspace. Is this reasoning correct?