First, if you haven't already, I would check to make sure that she doesn't have an ear infection, or teething, or something else that is making it really uncomfortable for her to sleep. Assuming that she is physically fine...
I highly recommend the ferber method. Yes, it is excruciating when they call "mommy" and "daddy." That's why she's doing it - she wants you to come and get her. Thats the tough part about her being older. The nice thing about her being older is that she understands you when you talk to her. We "ferberized" our daughter (who had always before been a good sleeper) at about 17 months. We went in at 5, 10, 15 minute intervals. I took turns with my husband going in. Finally, after an hour of crying, my husband said to my daughter, "Look, I know you're not happy, but you need to go to sleep. You're a big girl, you know how to do this, you need to lie down and go to bed." She did! The next night she lay down and went to sleep without a peep. She's a pretty verbal kid, so she understood what he was saying, she realized she wasn't going to get her way, and she gave up. Mind you, this happened after two months of it taking an hour to get her to sleep (sitting in her comfy chair) and then waking up in the middle of the night and sleeping on her floor until morning. That hour was terrible, but afterwards we were so mad at ourselves that we hadn't let her cry two months earlier!
Two tips to make it easier, should you go this route. 1) turn off the monitor. Sitting there listening to her cry at high volume is just punishing yourself. 2) Remind yourself that what she's basically doing is throwing a tantrum - she wants something that she can't have. If you were at the toy store and she pitched a fit about wanting a toy that you weren't going to buy, would you give in just to get her to stop crying? Hopefully not. She is simply learning that she doesn't always get exactly what she wants, which is a hard lesson to learn (hence all the crying) but an important one.
Last thing - if you do let her cry, you have to go all the way. if you only let her cry for 20 minutes, she'll learn that's how long she has to cry for before you go in. That's not a pattern you want to set up!
Good luck!