20世紀20年代,小女孩林英子隨著爸爸媽媽從台灣飄洋過海來到北京城,住在北京城南惠安會館附近的一個小院裏。爸爸是大學教授,家裏還有一個小弟弟和乳母,英子的童年就在這種無憂無慮的氛圍中度過。
英子在胡同玩耍時,總會看到會館門前癡立的“瘋女人”秀貞,漸漸地,她們熟識了,秀貞非常喜歡英子,英子也很喜歡她。從秀貞口裏,小英子知道她的情人是一個北大學生,因為參加學生運動,被反動軍警抓走了,下落不明。而他們的女兒“小桂子”也被人扔到齊化門城根底下,至今生死未卜,秀貞就成了現在這種瘋瘋癲癲的模樣。小英子很同情秀貞,答應幫她尋找小桂子。
胡同還住著個賣唱的人家,賣唱的小姑娘妞兒是和英子一起玩的小夥伴,妞兒是個棄兒,生性老實,受盡養父、養母虐待,有時還受外人的欺侮,英子總是替她不平。
在一個大雨傾盆的夜晚,妞兒挨了打,跑到了英子家,向她訴說了自己的身世。英子意外地發現,妞兒的耳朵後有一個痣,她想起秀貞曾說過女兒小桂子的耳後也有一顆這樣的痣,原來小夥伴妞兒就是小桂子!英子立刻把妞兒拉到秀貞家,讓她們母女團聚,就在這個晚上,秀貞帶著妞兒去尋找小桂子的生父了,她們的身影消失在雨夜中……
在送走秀貞母女的那個夜晚,英子病倒了。病好了之後,英子家搬家了。她也到了上學的年紀。在課堂上,她跟著老師念“國破山河在,城春草木深……”。在離英子家不遠的一個荒草叢生的破院子裏,英子又結識了一個新朋友,他總是在草叢裏掩蓋著什麼。他們常常在一起聊天,英子得知他還有個學習非常好的弟弟。
誰知,那人竟是一個小偷,不久,他就被警察抓走了。可是,英子並不認為他是個壞人,因為他曾說過自己是為了“奔窩窩頭和供弟弟上學,不得已才走了這一步”的。這個朋友也“走”了。
英子家的乳母來媽拋下自己的兒女、家庭,到林家當傭人,辛辛苦苦地賺錢養活在鄉下的男人和孩子,她的男人有時也來看看她。英子的弟弟就是吮著宋媽的奶水長大的,宋媽勤快、誠實,她很喜歡小英子和她的弟弟。
一天,英子放學歸來,看見宋媽呆呆地坐在廊簷下。原來她的兒子小栓子淹死了,她的女兒也不知被丈夫賣到了什麼地方……
英子有一個非常慈祥可親的父親,他喜歡書和花、鳥,更喜愛英子和弟弟。在他身邊經常聚攏著一些進步的學生,他們共同商討著革命道理。
可是好景不長,父親患肺病離開了人世,英子和母親、弟弟一起,把父親埋在北京郊區山間的台灣義地裏,他們要回台灣老家去了。宋媽被她鄉下的丈夫用小毛驢馱走了。英子悵惘地望著宋媽,似乎她在北京所擁有的一切都永遠地離她而去了……