1. Determine the oxidation numbers of all atoms and tag the atoms that change oxidation numbers
2. Split those tagged atoms out into the two half (cell) reactions
Do steps 3 through 6 for each half (cell) reaction
3. Balance the atom which changes oxidation number.

4. Add
on the left for the reduction electrons equal to the change in oxidation number (each) times the number of atoms that change oxidation number (total.)
on the right for oxidation
5. Balance the spectator ions such as Cl-, OH-, H+, etc.

6. Balance the oxygen by:
in acid: adding 1 H2O for each O and 2 H+ on the other side.
In base: adding 2 OH- for each O and 1 H2O on the other side.
The half cells should be balanced at this point. To get the overall reaction:
7. Add the two half reactions together such that the electrons cancel. (Find a common factor.)

Here is a repeat of the lazy person's guide to oxidation numbers of atoms in compounds and ions.:

The polyion chart:
Name(acid)  ion:
                   acid:
hypo...ite
hypo...ous
...ite
...ous 
...ate
...ic
per...ate
per...ic
chlor ClO- ClO2-   ClO3- ClO4-
brom BrO- BrO2-   BrO3- BrO4-
iod IO- IO2-   IO3- IO4-
sulf(ur) SO22- SO32-   SO42-
nitr NO2-   NO3-
     
phosph(or) PO23- PO33- PO43-
carbon CO32-
chrom CrO42-
dichrom Cr2O72-
mangan MnO4-

Others:
hydroxide:   OH- hydronium:  H3O+ ammonium:  NH4+

Some special polyions for which O does not have an oxidation number of -2
 
peroxide  O22- superoxide  O2-