1935年夏天,來自一個寬裕的英國小康家庭的13歲的少女布里奧妮(斯奧里茲?羅南飾)剛剛開始嘗試寫作,想象力豐富。一天,她暗中發現僕人的兒子——羅比?特納(詹姆斯?邁克沃伊飾)和她姐姐塞西利亞(凱特?奈特莉飾)之間有曖昧關係,而且發現他給她寫了一封充滿情色意味的情書。布里奧妮豐富的想象力虛構着各種可怕的事情,浮想聯翩。當她的表姐羅拉被強姦後,布里奧妮相當肯定她看到是羅比做的,這次指證使羅比蒙冤入獄,留下傷心欲絕的塞西利亞。
第二次世界大戰爆發了,出獄後的羅比和塞西利亞都投入了保衛祖國的戰鬥,布利奧妮放棄到劍橋升學成爲一名軍隊醫務人員。沒有人能理解她的做法,只有她知道她懷揣着巨大的祕密和自責。她鼓起勇氣,想把這祕密解開,能真正贖罪和得到寬恕。然而,世事幻變,出乎布利奧妮的預算。