I did the Ferber method with my first and had to do it several times, each time it was somewhat traumatic (for me and him).
With my others, I did a variation, that worked much better. I just soothed my babies (didn't cry it out) and made sure they were totally tired and settled, and then put them down. They fussed a bit (a lot less than my first) and I only had to reassure, rather than leave and hear them cry.
It was far less upsetting. Learning how to read your baby when really tired ... is the key. I put mine down later in the evening.
If baby is teething or our of sorts, personally, I wouldn't let him/her CIO. They're already in need of some extra loving.
When I was helping mine to sleep unassisted (one of my co-slept as an infant and I transitioned to a crib), I just kept putting them down when they showed signs of being really tired (rubbing eyes, yawning, etc. and I would just fold laundry in their room, read (magazine), whatever, I'd pop in and out of their room, and pat their back, but didn't stay. I did the same with nap time.
They fussed, but there wasn't this timing it and letting them cry.
I also didn't have a formal routine I had to be a slave to - with any of my others (other than first) and that was so much easier. They could nap anywhere and just be more flexible. Their whole bedtime didn't get messed up if they were teething.
Hope that helps.