Another method - not necessarily better.
P(a) = (a+b+c)(ab+bc+ca) - abc is a polynomial in 'a'.
Now P(-b) = (-b+b+c)(ab +bc -bc) - abc = 0
.: (a- [-b]) = (a+b) is a factor of the LHS
Similarly, (b+c) and (c+a) are factors of the LHS
.: LHS = k(a+b)(b+c)(c+a) for some constant k
Since coeff of term in, say, a2b of the LHS is 1, k=1
.: LHS = (a+b)(b+c)(c+a)
QED
To add to this more sophisticated method:
1. The "similarly" follows from the fact that the multivariate polynomial on the LHS of this equation is symmetric: that is, interchanging any two of a,b,c does not change it as a polynomial.
2. The LHS must be of the form k(a+b)(a+c)(b+c) after establishing those three factors of the LHS, as the LHS is of degree 3. If we did not know this then k would have to be replaced with something potentially more complex.
Exploiting symmetry, using the factor theorem, and using degree are together a powerful way of dealing with multivariable polynomials in general, but this isn't so important for the sort of questions they can ask you in the HSC.