FactorList[poly] gives a list of the factors of a polynomial, together with their exponents.
The first element of the list is always the overall numerical factor. It is {1, 1} if there is no overall numerical factor. Example: FactorList[3 (1+x)^2 (1-x)].
FactorList[poly, Modulus->p] factors modulo a prime p.
FactorList[poly, GaussianIntegers->True] allows Gaussian integer coefficients.
FactorList[poly, Extension->, , ... ] allows coefficients that are arbitrary rational combinations of the . See The Mathematica Book on the web: Section 3.3.4. See also: FactorTermsList, TrigFactorList, CoefficientList.