Example 8 Solve the system of equations: $\left\{\begin{array}{l}a\left(b^{2}+c\right)=c(c+a b), \\ b\left(c^{2}+a\right)=a(a+b c), \\ c\left(a^{2}+b\right)=b(b+c a) .\end{array}\right.$ (64th Czech and Slovak Mathematical Olympiad)
The original system of equations is equivalent to
$$
\left\{\begin{array}{l}
a b(b-c)=c(c-a), \\
b c(c-a)=a(a-b), \\
c a(a-b)=b(b-c) .
\end{array}\right.
$$

If one of $a, b, c$ is 0, without loss of generality, let $a=0$. It is easy to see that $c=b=0$.

If $a, b, c$ are all non-zero, when one of $a-b, b-c, c-a$ is 0, then $a=b=c$.
If $a, b, c$ are all distinct, then multiplying the three equations yields
$$
a b c=1 \text{. }
$$

Thus, the original system of equations can be transformed into
$$
\left\{\begin{array}{l}
b-c=c^{2}(c-a), \\
c-a=a^{2}(a-b), \\
a-b=b^{2}(b-c) .
\end{array}\right.
$$

If $a>b$, from equation (2) we know $b>c$.
Then from equation (1) we know $c>a$.
Thus, $a>b>c>a$, which is a contradiction.
Similarly, $a<b$ also leads to a contradiction.
Therefore, $a=b=c$, which again contradicts the assumption that $a, b, c$ are all distinct.
Hence, the solutions that satisfy the conditions are
$(a, b, c)=(t, t, t)$ (where $t$ is any real number).