A história começa na Nova Inglaterra, 1835. Sarah, uma bela jovem, conhece o seu pai, Alex Stafford, pela primeira vez. Sarah, de seis anos, descobre que ela é o produto do caso adúltero de Stafford com sua mãe, Mae. Mae foi incitada a abortar a criança, mas recusou-se a fazê-lo. Esta decisão separou-a do Alex e deixou a Mae deprimida. Sarah começa a pensar que a culpa é dela, mas ela espera que Alex nunca mais volte.
Após aquele ano, a empregada de Mae, Cleo, leva Sarah com ela numa viagem à beira-mar, para que Mae possa ter uma visita privada com Alex. A Cleo leva a Sarah com ela para um bordel popular onde a Cleo é conhecida e tem um companheiro masculino. Depois de se embebedar, ela concorda em dormir com ele enquanto Sarah espera no salão. Depois deste homem deixar a Cleo com o coração partido novamente, Cleo num estupor meio bêbado diz à Sarah “a verdade de Deus” e obriga uma Sarah assustada a ouvi-la dizer que nenhum homem se preocupa com uma mulher e tudo o que eles querem é sexo.
Mae e Sarah mudam-se então para uma cabana nas docas, onde a Mae se prostitui para pagar as contas. Sua reputação é conhecida em toda a cidade, e a jovem Sarah é forçada a sofrer a rejeição dos habitantes da cidade por causa disso. Através desta experiência, Sarah aprende a mascarar suas emoções e substituí-las por um exterior duro.
Poucos anos depois, Mae morre para uma terrível doença, deixando Sarah sozinha aos oito anos de idade com um bêbado chamado Rab. Inseguro do que fazer com a criança pequena, Rab procura um lar para a criança. Ele encontra um homem que está procurando uma menina para o seu mestre rico. Pensando que este é o golpe de sorte de Sarah, Rab leva Sarah para o bairro rico. Eles são recebidos à porta por uma mulher que exorta Rab a levar Sarah embora e não voltar. Não dissuadido, Rab insiste que Sarah é perfeita para este homem rico. A mulher admite o casal e os envia para um quarto no andar de cima, onde são instruídos a esperar até que seu mestre possa vê-los.
Duke, o dono da casa, dá as boas-vindas a Sarah e Rab; minutos depois, Rab é estrangulado diante dos olhos de Sarah, seu corpo jogado em um beco próximo. Duke, que é um pedófilo, estava vasculhando a cidade não por uma nova filha, mas por uma nova vítima. Duke informa Sarah (renomeado por ele Angel) que há muitas coisas que ele quer ensinar a ela. Ele lhe dá a primeira “lição” naquela mesma noite.
Após cerca de 10 anos com Duke, Angel finalmente escapa e embarca num navio com destino à Califórnia. Roubada e forçada à opção de se prostituir em vez de ser violada pelos passageiros, na sua maioria homens, ela desembarca em São Francisco com nada mais do que a roupa que está usando. Angel é acolhido por ‘The Duchess’, a dona do The Palace, um bordel em Pair-a-Dice e torna-se uma prostituta exclusiva e de alto preço. Empregada pela Duquesa, Angel é constantemente vigiada, os seus parcos ganhos guardados dela. O seu único consolo é Lucky, uma prostituta que está frequentemente bêbeda. Lucky lembra Angel de sua mãe.
Michael Hosea primeiro vê Angel em uma viagem ao Pair-A-Dice para vender produtos. Ele está pronto para partir quando Deus diz a Michael “ela é a tal”, a mulher com quem ele está destinado a casar. Michael logo descobre, para seu choque, que Angel é uma prostituta. Ainda determinado a obedecer à ordem de Deus e casar com Angel, Michael paga a alta taxa pelos serviços dela na esperança de convencê-la a partir com ele. Ela rejeita teimosamente a oferta dele. Desanimado, Michael questiona Deus, mas ainda obedece. Ele paga os honorários de Angel por três noites sucessivas, conversando e raciocinando com ela até que seu tempo e dinheiro acabem. Angel mantém sua frente fria e sarcástica para dissuadi-lo, querendo escapar da dor que suas palavras causam a ela. Entretanto, ela não consegue escapar dos pensamentos de Michael e de sua crescente esperança de vida fora do Palácio.
Após a última noite com Angel, Michael fica frustrado e deixa Pair-A-Dice. Alguns dias depois, ele retorna ao Pair-A-Dice, incapaz de ignorar a ordem de Deus por mais tempo. Ele encontra Angel quase morto de uma brutal surra dada por Magowan, o guarda-costas da Duquesa. Disposto a usar qualquer meio para preservar a vida de Angel, Michael pede-lhe em casamento para que ele a possa levar para o seu camarote. Mal consciente, Angel concorda, murmurando “Por que não?”
Michael Enfermeiras Angel de volta à saúde no seu camarote. O Angel mal tolera o arranjo enquanto ele serve as suas necessidades. Michael suporta a dureza do Angel, permanecendo fiel à sua nova esposa e ao plano de Deus. O cunhado viúvo de Michael, Paul, regressa a casa depois de uma desgraça de ouro sem fruto nas Serras. Paul reconhece imediatamente Angel como a prostituta de alto preço do Palácio. Acreditando que o Angel enganou o Michael, o Paul trata-a mal. Paul tenta contar a Michael sobre a profissão de Angel, mas só o enfurece. Paul pensa que Michael casou com Angel por luxúria cega e sem saber que ela era uma prostituta. Durante sua visita, Paulo pensa que há uma fenda entre ele e Miguel por causa de Miguel, sem saber que Miguel ama Miguel apesar de seu passado e que é ele quem está causando a fenda entre eles.
Quando ela finalmente cura de suas feridas, Miguel tenta fugir de Miguel na esperança de retornar ao bordel para recuperar seu dinheiro A Duquesa tinha escondido dela e insistiu que estava sendo gasto na roupa e comida que Miguel recebeu. Quando Paulo parte para vender os produtos da sua terra de volta no Par A-Dice, Anjo vê isto como uma forma de ela escapar. Enquanto Michael está fora trabalhando no campo, ela corre atrás da carroça de Paul. Ele concorda em levá-la com ele se ela lhe pagar de volta com seu único meio de pagamento: ela mesma. Ele fica ainda mais enojado com as ações dela depois que fazem sexo juntos e espera que esta seja a última dela que ele voltará a ver.
Aponte seu retorno ao Pair-A-Dice, ela vê que o Palácio ardeu matando sua querida companheira Lucky, e outra prostituta de nome Mai Ling. Sem mais para onde ir, ela começa a trabalhar acima de um bar-once novamente como uma prostituta. Mesmo detestando ser vista como uma prostituta, ela não tem outras habilidades com as quais possa ganhar a vida. Um lívido Michael encontra-a num quarto com um cliente e luta para sair do bar cheio de bêbados à espera da sua vez com o Angel.
Eles voltam para a cabana, onde Michael confia em Deus para trabalhar através da sua raiva contra a sua infidelidade. Angel começa a desenvolver sentimentos afetuosos para com Miguel, que ela não pode compreender porque nunca se permitiu amar nenhum homem, pois “a verdade de Deus” disse que eles se aproveitarão dela ou a abandonarão, assim como seu pai. Apesar da sua contínua frieza, Michael a ama incondicionalmente. Ao mostrar-lhe o nascer do sol, ele diz: “É isso que eu quero dar-lhe”. A Angel sente-se a ficar de coração mole dia após dia, mas na sua incerteza e medo, recusa-se a partilhá-lo com o Michael. Ela sente um profundo sentimento de vergonha pela sua “impureza”. Ela é suavizada pelo amor de Michael, mas não se vê como digna disso. Embora tenham dormido juntos regularmente, Angel está muito desligado da experiência sexual, mas quando uma noite ela experimenta a mesma alegria e prazer que Michael (“E ela voou, Michael com ela, para os céus…”), isso a assusta.
Ela foge mais uma vez, desta vez para Sacramento; no caminho ela é oferecida uma carona por um velho que vende panelas. Ao chegar a Sacramento enquanto procura trabalho, ela encontra novamente Joseph Hochschild, que construiu sua nova loja, e ela fica com ele, sabendo que ele é um bom amigo de Michael. Ela trabalha para ele na loja dele, junto com sua esposa e sua mãe. Quando chega uma encomenda para Michael, ela tenta sair, mas Joseph a mantém ocupada, fazendo-a esperar mais tempo. Quando ela termina suas tarefas e vai fechar a loja, Michael está à porta, tendo voltado novamente para buscá-la. Ela admite que está assustada com a idéia de estar apaixonada por ele, mas ele a tranquiliza e a traz para casa.
Até sua chegada de volta ao vale, eles conhecem a família Altman, que tem uma roda quebrada e estão encalhados na beira da estrada. Michael ajuda a consertar a carroça deles e os convida a ficar em sua cabine. Angel revela à Sra. Altman e à filha mais velha, Miriam, que ela conheceu Michael em um bordel, e se surpreende ao descobrir que eles só têm compaixão por ela, ao invés de desprezo. Eles se tornam íntimos, e Angel se apaixona pela filha mais velha, Miriam, que começa a gostar de Paulo, que vive no outro extremo do vale. Quando Angel vê Miriam conversando com Michael, ela assume que eles têm sentimentos um pelo outro e pula para a conclusão de que eles fariam um casal muito melhor do que ela e Michael. Paul quer ver Michael acabar também com Miriam, mas também começou a desenvolver sentimentos pela jovem de 16 anos Miriam. Ele nega seus sentimentos apenas porque deseja ver Michael com Miriam ao invés de Angel.
Meanwhile, é revelado em um flashback que durante seu tempo como amante de Duke, Angel engravidou duas vezes e ambas as vezes um Duke enfurecido mandou um médico abortar, tomando medidas na segunda vez para garantir que ela nunca mais possa engravidar novamente. Angel mais tarde revela isto a um Michael devastado. Ela também revela que uma vez ela teve sexo com seu próprio pai, que veio ao seu bordel, numa tentativa de vingança porque ele deixou a mãe dela. Ela está atolada de culpa pela forma insensível como o tratou. Sabendo que isso chocou seu marido, e sentindo-se culpada por não poder dar a Michael nenhum filho seu, como ela sabe que ele anseia, Angel foge mais uma vez, deixando para trás sua aliança de casamento, na esperança de que Michael se case com Miriam e tenha filhos com ela. Michael é esmagado, mas diz que não irá atrás de Angel novamente se ela não quiser estar com ele.
Desta vez Angel vai para São Francisco. Quando ela chega, ela consegue um emprego com um homem gentil chamado Virgil. Ele acolhe-a como cozinheira no seu café, e toma conta dela. Mas depois de meses de trabalho duro, o café arde, e nele todas as economias e bens de Angel. Ao observar o fogo na rua, um Anjo desprovido ouve uma voz familiar – é o Duke, a cumprimentá-la. Temendo que ele magoasse Virgil, que parece desconfiar da Duke, Angel concorda em voltar com ele.
Após mais sob o poder da Duke, espera-se que Angel retome sua vida como prostituta. No entanto, a preferência sexual de Duke é por raparigas jovens, e ele pede a Angel para gerir os seus futuros “companheiros”, mas só depois de uma semana de prostituição. Angel deve ser apresentado a uma multidão de homens. Ela começa a lutar em sua mente e grita a Deus internamente. Ela está preparada para subir ao palco para entreter os homens. Quando finalmente ela está diante deles, a voz de Deus lhe diz para cantar e ela começa a cantar “Rock of Ages” para a multidão assombrada e confusa. Um homem de cabelos grisalhos canta junto com ela e sobe para a frente do palco. Ela esquece a letra da canção e ele a termina.
Após a apresentação, Duke repreende Angel. No entanto, ele é recebido pelo estranho cantor da platéia. Ele ameaça ter o Duke enforcado se ele colocar um único dedo no Angel. Com isso o homem acompanha Angel para fora, e ao saírem Angel resgata duas outras jovens que Duke estava usando como vítimas. Quando os homens no bordel vêem as duas raparigas com o Angel, ficam furiosos e destroem o lugar. O homem leva-as para sua casa, onde sua esposa e filha cuidam delas. Jonathan Axle, o homem que a salvou, é um banqueiro rico e respeitado, com uma sólida família cristã. Angel começa a freqüentar a igreja com a família Axle e cresce afeiçoado a eles.
Meanwhile, Miriam revela que está apaixonada por Paulo, e os dois se casam enquanto Angel está fora. Miguel ainda espera o regresso de Angel e reza continuamente para que ela volte. Vendo a sua dor, Miriam insiste que Paulo deve ir e encontrar Angel, mas Paulo, ainda cheio de desprezo pela mulher que acredita ser Angel, recusa.
Angel eventualmente reconhece o amor de Deus por ela e recebe Cristo no seu coração. Ela começa a trabalhar com prostitutas, ajudando-as a deixar seus velhos caminhos e aprendendo novas habilidades que podem ajudá-las a ganhar a vida. Susanna Axle, a filha de Jonathan Axle, ajuda-a a dirigir a pensão.
Paul finalmente cede à Miriam e vai a São Francisco para procurar o Anjo. Ele a vê com um homem velho – Jonathan Axle – e pensa que ele é um cliente, e ela ainda é uma prostituta. Ele fica furioso por ter vindo até aqui, e começa a inventar desculpas para dar a Miriam para não ter que machucá-la dizendo-lhe que Angel é uma prostituta. No dia seguinte, porém, ele decide ir até a casa e confronta Angel. No início ele age com frio, desprezo e sarcástico, mas se assusta com a humildade dela e o amor genuíno que ela guarda por Miguel. Ele fica chocado ao saber que ela deixou Michael na esperança de que ele casasse com Miriam para que ele pudesse ter filhos. Quando ela descobre que Paulo é casado com Miriam, e que Michael ainda está esperando por ela após três anos de ausência, seu mundo inteiro desmorona e ela não se sente mais justificada em ficar em São Francisco.
Ela finalmente toma a decisão de deixar Susanna no comando da casa, e volta para Michael. Ela o surpreende no campo onde ele está trabalhando, ajoelhando-se a seus pés e chorando. Ela está de luto para ver como a perda dela teve um efeito profundo sobre Michael. Ela revela que o seu verdadeiro nome é “Sarah”. Michael, em lágrimas, recebe-a com amor bondoso, puro e perdoador, e declara que acredita que a revelação do seu nome é uma promessa de Deus de que um dia poderão ter filhos (a Sara na Bíblia era uma mulher estéril que, pela graça de Deus, acabou sendo capaz de ter um filho). Finalmente eles começam uma nova vida juntos, a vida com que sonharam.
No epílogo, diz-se que Miguel e Sara tiveram mais tarde quatro filhos.