気仙沼市上鹿折出身。小学4年生のときに茨城県日立市から疎開。宮城県気仙沼高等学校を経て、1960年東京大学教育学部教育学科（教育史・教育哲学専攻）、1961年東京大学教育学部教育行政学科（教育行政専攻）卒業。1996年から2002年まで（財）教科書研究センター研究部長を務める。
彼の作品は『郷土小説』と考えられている。坊やの人形（児子的大玩偶）やシャオチの帽子（小琪的那頂帽子）やりんごの味（蘋果的滋味）等々作品が映画化された。
数十万とも言われる兵と朝廷の権威を擁する曹操の大軍勢を前に、孫権の陣営は恐れを抱き、張昭らは降伏を説いた。しかし魯粛だけは抗戦を説き、鄱陽に出ていた周瑜を呼び戻させた。周瑜は「中原出身の曹操軍は水軍による戦いに慣れておらず、土地の風土に慣れていないので疫病が発生するだろう。それに曹軍の水軍の主力となる荊州の兵や、袁紹を下して編入した河北の兵は本心から曹操につき従っているわけではないのでまとまりは薄く、勝機はこちらにある」と分析し、孫権に開戦を説いた。『三国志』呉書魯粛伝によると魯粛から孫権と同盟を結び曹操と対抗するよう説かれた劉備は、諸葛亮を使者として派遣して孫権と同盟を結んだ。一方、『三国志』蜀書 諸葛亮伝によると、諸葛亮が孫権との同盟を献策し、劉表の弔問に来ていた魯粛を伴って孫権と面会したという。諸葛亮は曹操の兵が疲弊していること、荊州の人間が心服していないことを挙げ、関羽が率いる精兵の水軍と劉琦が率いる江夏軍と孫権軍が軍協力すれば必ずや曹操を破ることができると説くと孫権は大いに喜んだ。孫権は周瑜・程普ら数万の水軍を劉備の救援に派遣し、周瑜、程普、劉備らは疫病に悩まされていた曹操軍を、赤壁・烏林で撃破して敗走させた。『三国志』魏書武帝（曹操）紀の原書には、「公（曹操）は赤壁に到着し、劉備と戦うが、不利だった。疫病が流行して、官吏士卒の多数が亡くなったので、撤退した」と書かれている。『三国志』魏書武帝紀の注に引く『山陽公載記』には、曹操は軍船を劉備に焼かれ、徒歩で撤退した。劉備は曹操を追撃して、火を放ったが、曹操に逃げられたと書かれている。『三国志』呉書周瑜伝には赤壁において遭遇した曹操軍を劉備軍と共に逆撃し、この際、曹操軍には疫病が流行っていた為、一戦を交えると敗走し、長江北岸へ引き上げたとある。さらに黄蓋の建策による火計と偽降を仕掛け、曹操軍が油断した隙をつき、油をかけ薪を満載した火船を差し向け、強風にあおられて曹操の船団は燃え上がり大打撃を受け、岸辺の陣まで炎は及んだ。曹操は後退し烏林に陣を張り、周瑜らも長江を挟んで対峙したとある。『三国志』呉書周瑜伝の注に引く『江表伝』には、時に東南の風が激しく吹き荒れ曹操軍の船を焼き尽くして岸辺の陣営まで延焼させた後に周瑜らは渡渉し陸上から曹操の陣に追撃をかけ、曹操軍は潰走したと書かれている。『三国志』蜀書先主（劉備）伝には、「劉備は孫権陣営の周瑜・程普らと力を合わせ、赤壁で曹操を大いに破り、曹操軍の軍船を燃やした」と書かれている。『三国志』呉書呉主（孫権）伝には、周瑜・程普を左右の督とし、各一万の兵を領させ、劉備と共に進軍し赤壁で曹操軍を大いに破ったとある。『後漢書』献帝紀には、曹操は水軍で孫権を討伐したが、烏林・赤壁で孫権の部将周瑜に敗れたとある。『後漢紀』には、曹操は赤壁で周瑜と交戦し、周瑜に大敗したとある。『太平御覧』が引用する『英雄記』には、曹操は赤壁から長江南岸へ渡ろうとしたが、船がなかったため筏に作って漢水沿いに川をくだって浦口に至った。曹操がすぐには渡ろうとしなかったため、周瑜は夜中に火を放たせ、筏に火燃えうつると、すぐに船を返して逃げかえった。数千艘の筏を燃やされた曹操はそのため夜中に逃走することになったと書かれている。曹操は残った船を燃やして、敗残兵をまとめて撤退した。疫病で曹操軍の多くの役人・士卒が亡くなった。『三国志』呉書呉主（孫権）伝には、曹操軍の敗残兵の大半が飢えと病で亡くなったと書かれている。周瑜・劉備らは水陸並行して更に追撃して、南郡まで兵を進めた。曹操は慣れない江南の地で疫病の流行に悩まされたこともあり、江陵を曹仁に、襄陽を楽進に託し、自らは北方に撤退した。赤壁の戦いの前後に孫権は合肥を攻撃したが、曹操は張喜に千人の兵と汝南で集めた兵を率いさせて合肥の救援に向かわせた。そして曹操配下の蒋済が流した、「軍勢4万が合肥の救援に向かっている」という偽情報を信じた孫権は即座に撤退したという。いつ孫権が合肥を攻撃したのかについては諸説あるが、孫盛は「赤壁の戦いで劉備が曹操を破った後、孫権が合肥を攻撃した」というのが正しいとしている。