古寧頭戰役

解放軍戰役準備

解放軍迅速奪取了閩北、閩南，在1949年9月至10月之際，第10兵團在福建當面有第25、27、28、29、30、31、32等7個軍；但缺乏海戰經驗，且無海軍、空軍掩護作戰。在占領平潭島、廈門島後，準備進一步佔領金門島與台灣島。解放軍第10兵團決定以第28軍、第29軍各一部共7個團兵力，在第28軍首長指揮下攻取大金門，以第31軍攻取小金門；稍後因船隻不足解除第31軍攻擊任務，決定僅由第28軍攻取大小金門。
中國人民解放軍第三野戰軍渡江以來，未遭遇國軍大反抗，未注意渡海作戰種種隱憂。第28軍受領進攻金門任務後，沿海船隻大部被國軍破壞，徵集到船隻只能裝載1個營。另外情報不靈，在大、小嶝島戰役，已發現被俘國軍中有第十二兵團所屬第十八軍第11師31團士兵，但主事者仍認為守軍要逃，反懷疑供詞不可靠。當時中國人民解放軍第28軍副軍長蕭鋒親審俘虜，向兵團報告，葉飛說：「不可能吧。胡璉兵團還在潮、汕地區未動。」葉飛對蕭鋒說：「看來大陸再也不會有什麼大仗打了，你們二十八軍就掃個尾吧。」。在第10兵團多次督促下，第28軍於10月18日下達攻擊大金門島部署命令。10月21日，解放軍第10兵團發現國軍第十二兵團部抵達金門灣，其部隊由潮州、汕頭開始船運；10月23日，又偵悉該敵第118師已抵達大金門，後續部隊正在海運途中。但第10兵團對該敵是撤回台灣還是增援金門判斷不定，因而未採取應變措施。第10兵團第28軍共派出第一梯隊3個團9000餘人。

國軍戰役準備

1949年（民國三十八年）6月以前，國軍根本未在金門島上設防。到6月中旬，國軍廈門要塞司令部才成立金門要塞總台，這才開始構築島上工事，鋪設通信線路。大金門島東部山高岸陡，不易攀登；西半部地勢較平坦，其北岸為泥沙灘，利於登陸，是國軍防守重點。島上除少數原日軍工事外，在登陸地段還加修野戰工事，敷設障礙物。
8月起，隨著福建戰事發展，國軍開始增強金門防禦。大小金門原有國軍第二十二兵團全部（當時欠第五軍）、第八十軍之青年軍第二〇一師（師部與下屬第六〇一團、第六〇二團；欠第六〇三團，該團8月調往福建馬尾增援福州戰役遭殲滅）及第十二兵團第十一師防守，共約2萬餘人。9月3日，國軍青年軍第八十軍之第二〇一師（為1948年9月由獨立第一旅改組，師長鄭果，1949年2月調來臺灣鳳山由孫立人訓練，編裝較第二十二兵團部隊整齊）師部及第六〇一團、第六〇二團（第六〇三團調往福建馬尾）、戰車第三團之第一營（欠第二連）21輛M5-A1輕戰車擔任金門防務。兩個團共3,000多人（運到金門的2個團均為滿編狀態）。第一批大規模部隊運抵金門駐防，擔任金門防務。二十二兵團部、第二十五軍（軍長沈向奎）軍部，下轄第四十五師（師長勞聲寰）守大金門，第四十師（師長范麟）守大嶝島、小嶝島。
第二〇一師在金門的防務區，金北古寧頭附近由第六〇一團守備、第六〇二團擔任金西第一線防務，兩團防線布署在瓊林至古寧頭一帶沙灘。第二〇一師抵達金門所屬防區後，即大量開始構築防護工事；但金門缺乏可作掩體的土木建材，因此主要以土壘為防禦掩體。
9月中旬，第五軍歸還第二十二兵團建制，但此時的第五軍編制下僅剩第二〇〇師，原本編入的第一六六師（師長葉會西）因部隊在廈門戰役被擊潰，殘部撤入小金門但已無戰力可言，第五軍兵力總數也不滿4,000人。第五軍歸建後軍部和第二〇〇師擔任小金門防務。該月國軍失守漳州。由於福建北部大部分已落入解放軍之手，福建南部防務壓力遽增，二十二兵團雖下轄單位規模眾多，但單位大部分戰力殘破，實際兵力僅萬餘人出頭，東南軍政長官公署軍政長官陳誠派東南軍政副長官羅卓英銜命兩度親往汕頭，洽胡璉第十二兵團接替第二十二兵團防守金門。
第十二兵團原屬廣州方面作戰序列，在國防部編裝補給名單上僅納編二個軍級單位，但胡璉在徐蚌會戰突圍率兵南撤時，於浙江、江西徵兵編訓。1949年5月解放軍南渡。隨後胡璉赴江西重建，在方天鼎力支下，短短半年，部隊邊打、邊退、邊訓練，撤至潮汕時，已號稱擁兵十萬，但是就中共整理的地方史記載，無論是方天或是胡璉的「重建」方式靠的是捉兵解決，甚至引發了地方憤怒及組織對抗。
即使如此，在十二兵團仍有足夠人力分派的狀況下，胡璉決定將未列入現有編成序列的軍級單位調往金門。10月8日，高魁元乃率所部由汕頭登船出動。
10月10日，解放軍攻擊大、小嶝島，兩島防衛主要由第四十師各配置一團兵力為主，大嶝島另由第十一師增派1團兵力強化守備，但僅有3團的兵力隨即遭受重創；在第十一師其它部隊掩護下第四十師殘部撤入金門，大嶝群島失守。國軍查覺到金廈兩島戰火日增。10月10日及10月14日，國軍為固守金門，陸續將潮汕地區之第十二兵團所率國民革命軍第十八軍（軍長高魁元）兩個師（第十一師、第一一八師）、國民革命軍第十九軍（欠第四十三師）撤至金門，至10月24日，金門國軍總兵力已增至4萬餘人。第十九軍原預定布防浙江，10月19日，奉公署命改駛金門。在第十二兵團全部尚未到達接替防務之前，暫歸第二十二兵團李良榮司令指揮。
除了陸上兵力調動，國府在10月起開始對金廈兩地海域集結船隊發動大規模炸射，希望拖延解放軍集結態勢；最重要的一次打擊行動在10月18日，該日解放軍在廈門附近集結實施大規模渡海演習，查知此動向的空軍在該日擊毀數百艘機帆船，導致在真正開戰之際解放軍渡海運輸載具仍嚴重匱乏。
據中國人民解放軍南京軍區副司令王洪光曾根據兩岸資料計算，古寧頭戰役中大小金門島，國軍總數應該在6萬左右，其實國軍部隊番號雖多，但戰力殘破，真正的兵力數量大、小金門島約有2萬，而直接參戰的大金門島僅西半部駐防國軍兵力，大約1萬人。

序幕

10月15日，解放軍攻陷廣州，第十二兵團歸東南軍政長官公署序列。陳誠即令胡璉率領所部第十九、第六十七軍，移防舟山。在肅清大嶝島和小嶝島的國民革命軍後，解放軍發動廈門戰役；廈門的3萬守軍在短暫的抵抗後便遭擊潰。
10月16日，福建省政府主席兼廈門警備司令湯恩伯將指揮所移往金門。胡璉正在率部航行途中，解放軍突於10月17日攻陷廈門。解放軍在這場戰役中將廈門近9成守軍圍殲。陳誠認為，金門地區防守力量空虛，一旦失守，不僅沿海各地難以確保，而且台灣本島亦受威脅。他即派人攜函赴廣州晉謁蔣介石，並請王世杰將此情況代陳蔣介石。時蔣擬飛重慶部署西南軍事，接到陳誠函件後，即改飛台北。陳誠臨時改變部署，立即命令胡璉率領正在航行途中之第二船團，改航金門，接替防務。經蔣批准，陳誠即抽調第十二兵團第十九軍（軍長劉雲瀚少將，下轄第十三師、第十四師、第十八師）增援金門。
10月18日，在解放軍第10兵團多次督促下，第28軍下達攻擊大金門島部署命令：以第82師全部並指揮第84師第251團、第29軍第85師第253團、第87師第259團共6個團兵力，分兩個梯隊進攻大金門島；得手後，以第85師兩個團攻擊小金門島。定於10月20日發起戰鬥。
此時，解放軍第10兵團一面催促第28軍加緊準備，一面要求集中各軍所有船隻以保障第28軍攻金作戰。由於船隻嚴重不足，第28軍不得不推遲到10月23日進攻金門。
10月22日，福州綏靖公署代主任湯恩伯以當地最高長官身份，發布一道作戰命令：「所有金門島部隊，在十二兵團胡司令官未到達以前，均歸二十二兵團李司令官統一指揮。」是晚，第十九軍抵達金門，因接駁效率不彰，直到10月24日晚才將部隊一半接運上岸。
10月23日，解放軍第10兵團第28軍己集中可裝載3個團兵力船隻；第10兵團首長認為，必須乘敵增援部隊未到達金門之時，抓住戰機，發起登陸，攻取金門。第一梯隊航渡3個團，返航後，第二梯隊至少還可航渡2個團，一夜能運過5個團兵力，敵我力量對比可達1：1，足可鞏固陣地，解決殘敵；因此，決心於10月24日發起戰鬥。攻擊具體部署是：以第82師第244團、第84師第251團、第29軍第85師第253團共3個團為第一梯隊，由第82師統一指揮，分別自蓮河、大嶝島、沃頭東北港灣起渡，在大金門島北部湖尾鄉至古寧頭段登陸突破，首先攻殲該島西半部之敵；爾後會同後續梯隊攻殲東半部之敵。預定3天解決戰鬥。
10月24日，第十二兵團在金門海面停留一晝夜，成功嚇阻解放軍。晚上8時，解放軍第28軍指揮第一梯隊3個團（第82師第244團、第84師251團、第85師253團和第82師第246團）按預定計劃分別從蓮河、大嶝島、後村等地啟航；當時天空一片漆黑，海面颳起三、四級東北風，潮水徐徐上漲。
由於解放軍徵集水手都來自福州、泉州等地，不熟悉航道，事先又未經過訓練，協同不力，調度不靈；加上第82師指揮所未隨船跟進，通信聯絡不暢，各團即自行航行。由於強烈風浪，不熟悉潮汐漲退，結果搶灘船隻因退潮而全數陷在沙灘上動彈不得。接近島岸時，適逢落潮，又遭國軍炮火攔阻，造成部分傷亡。

第一日

10月25日凌晨0時30分左右，在壟口海灘拋錨的國軍戰車排3輛M5A1戰車成員，注意到海面上射出的紅色信號彈，以及大量機帆船和機槍攻擊；戰車組員於是進入戰鬥位置，發炮還擊，古寧頭戰役爆發。然而這時候又出現另一個巧合：國軍66號戰車，因故障車頭朝向內陸，砲塔遂朝後轉向海灘，此時甫登車射手熊震球，因砲塔位置之故未能裝填高爆榴彈，反而取出裝填了一枚穿甲彈，又因熊震球誤觸砲塔地板腳擊發機構，於是66號戰車便朝船隻開了第一炮，精確命中的一艘大型機帆船主桅，即刻引燃帆布，照亮附近海面。隨即，擔任守備任務第201師601團官兵，紛紛由海岸陣地集火射擊登陸共軍，金門岸上的12門57戰防炮、四門重迫砲和四門美造75山砲等也加入反擊。凌晨1點30分，解放軍「以300多艘木船向金門突擊」。除了熊震球外，當時國軍66號戰車的其他組員，還有：排長楊展、下士班長唐在坤、副駕駛曾紹林。他們也參與了這場「古寧頭戰役」，其中曾紹林以30機槍與共軍近距離駁火，最後曾紹林不幸陣亡。
至2時10分，在大小伯、角嶼、大小嶝解放軍炮兵火力掩護下，猛烈砲擊金門北岸官澳、西園、觀音亭山和古寧頭等地，但解放軍使用的火炮為75山炮及105榴炮，射程與破壞力都不夠為攻擊部隊掩護。2時許，解放軍各團約在10公里正面上（壠口、後沙、古寧頭一帶），開始向內陸擴張。第244團在蘭厝至壠口段登陸；第251團先頭營於湖尾鄉地區順利登陸，但後續營遭國軍炮火襲擊，傷亡近三分之一；第253團在古寧頭登陸。登岸後，即按照既定作戰方向，在「有幾個人打幾個人的仗，不等待，不猶豫，向裡猛插」戰術思想支配下，向敵縱深穿插。據被俘的衛生員趙保厚事後回憶，最先在壟口登陸之解放軍第244團面臨國軍裝甲部隊還擊而傷亡慘重，登陸之前在灘頭受到炮擊和坦克轟擊，損失十分大。據第251團團長劉天祥凌晨向第28軍副軍長蕭峰報告，守衛古寧頭一帶的「國民黨軍青年軍不堪一擊，俘虜甚多，甚至有俘虜被俘時僅著褲衩」。這時，解放軍葉飛將軍接到登陸成功報告，以為勝利在望。至拂曉前，解放軍進至西山、觀音亭山、湖尾、湖南高地、安岐、埔頭一帶。
國軍海軍在金門的艦艇在獲知解放軍登陸後，遂下令開往古寧頭西北海域，準備截擊登陸船團，包括掃雷202艇、南安號砲艇、淮安號砲艇、中榮號戰車登陸艦等，而駐防澎湖海軍太平艦，也即刻冒著強勁東北風，從漁翁島海域啟航，先往北駛向烏坵，再全速南下趕往金門助戰。中榮艦並非編制於金門的防衛武力，可說是完全不在解放軍預料之中，但戰車登陸艦所裝備的大量美製40砲、日製25機砲，卻是機帆船剋星；中榮艦原航行計畫是開往浙江定海，因此官兵私下採購了台灣產製的紅糖希望去當地販售牟利；但因金門防務空虛，中榮艦臨時接獲運輸十九軍至金門的任務。金門當地缺少足夠的貨幣採購，只好決定用花生油以物易物；但因金門方面的花生油生產不及而未能在中榮艦離開前交貨，故中榮艦在卸貨後並未直接返航，而是在金門外海徘徊後便謊稱海象不佳返回金門「避風」，而正好遇到解放軍攻擊金門。惟顧慮共軍岸砲火力強大，戰役期間海軍各艦艇，均僅在金門西部、西北與料羅海域，未能有效支援國軍作戰。。
4時30分，國軍剛抵金門之第十八軍第一一八師（欠第三五二團）及島上原有守軍兩個團，在坦克（戰車第三連欠一排）、炮兵配合下，分三路向解放軍登島部隊實施反擊。第十九軍之第十八師其已登陸進駐瓊林之部隊，亦就近歸十八軍高魁元軍長指揮。該師尚未下船之第五十三團則轉航小金門登陸，歸第五軍軍長李運成指揮；第十九軍軍長劉雲瀚與第廿五軍軍長沈向奎連絡，指揮該軍第十四師（欠第四十團），及第十三師之一部，由金門後埔向北推進，迎擊由安岐、埔頭南竄之解放軍，併積極向古寧頭推進，另以第四十師之迫擊砲全部配屬第十四師，以加強其火力。戰車營營長陳振威將預備隊戰車兩排，進至瓊林待命。8時起，國軍又出動空軍、海軍轟炸解放軍登島部隊陣地及未返航船隻；戰鬥十分激烈。10月25日黃昏，民裕輪抵達金門南之料羅灣，第十二兵團部派員接胡璉等上岸。但民裕輪船長因不熟金門海況，加上海上風浪過大不敢貿然靠岸，胡璉在當晚因此被困於船上未能上岸。
長久以來，民間說法均指解放軍依計畫於10月25日潮汐的滿潮時刻（約清晨2點前後），要在金門島最窄的蜂腰處登陸，但因錯估海流、風向，以致全部在古寧頭海灘登陸。其實此說法並不正確，依據戰後被擄獲共軍登島計畫，原本登陸地點，就是要金門北海岸在東一點紅至西一點紅之間海灘，首日登陸的三個團部隊，除一個營於金門西部海灘登陸，大抵各單位均能如計畫預期登陸。當日天亮後，隨即遭具有優勢的陸、空軍聯手絞殺；而解放軍在這時候又遇上了第三個不在它們預料到的事情，那就是國軍第四十五師的存在。第四十五師雖為陸軍編制，但部隊是由空軍警衛第二旅改組，師長也是原先空軍體系的勞聲寰擔任，該部隊實兵戰力水準未必能與一線部隊比擬，但是卻有國軍中最完整的對空支援無線電，以及由空軍派遣的空業官，對於目標指示及炸射指揮極為嫻熟，勞聲寰本人則長期擔任空軍教育體系高層職務，在人數有限的中華民國空軍中也屬無人不曉的重要人物。因此天尚未亮，18架自臺灣起飛支援的P-51戰鬥機飛赴金門戰場（又一說是原駐金門的AT-6），即立刻朝45師電台呼叫告知 ：「總隊長，我是某某，奉命前來支援，接受你的指揮，請指示攻擊目標。」，在未獲上級授權下勞師長隨即對在空機指示將炸射火力集中在機帆船上；在陰錯陽差下，古寧頭戰役成為國軍在國共內戰中極少數成功的三軍多兵種聯合作戰，結果則導致第一梯隊運輸的100多艘機帆船全遭摧毀無一返回，除此之外，空軍隨即在泉州灣以南、東山島以北、漳州以東區域對所有船隻實施掃蕩。解放軍第一梯隊使用船隻無人隨船指揮返航，登陸後又逢落潮而擱淺，遭國軍空軍、海軍轟炸掃射，全部損失，致使第二梯隊無船航渡增援。除了第一波成功登陸之後，第一天起在金門島的解放軍便被孤立。
解放軍第244團一度佔領雙乳山，天亮時遭國軍裝甲部隊反擊退敗。第244團團長刑永生身負重傷，仍率領戰士頑強抗擊；至12時，彈藥耗盡，該團人員大部陣亡。解放軍第253團佔領觀音山和湖尾高地，到10月25日中午被迫撤退。解放軍第251團團長劉天祥率主力激戰至下午3時，傷亡近千人，餘部衝出重圍，至古寧頭與第253團會合；第251團另一部苦戰9個小時，打垮國軍7次沖擊，僅存2個班，突圍至古寧頭，也與第253團會合。第253團堅守古寧頭，和友軍餘部擊退國軍多次反撲，給國軍以重大殺傷。解放軍第251團固守林厝，遭國軍第十四師和第一一八師強力圍攻，圍攻中率先衝鋒的第十四師第四十二團國軍上校團長李光前陣亡。
在第一批登陸船隊潰敗後，解放軍第10兵團察覺戰況出乎預料。第10兵團下令緊急動員船隻；只收集到裝載4個連兵力的船隻。第10兵團遂決定由第246團團長孫玉秀率第246、第259團各2個連前往增援；由於風浪太大，一部被風吹散，實際登島只有10個排。苦戰終夜，與堅守古寧頭部隊會合。由於國軍擁有海、空軍戰力遠勝於解放軍，因此解放軍無法在白天運兵，而是在當晚利用夜色掩護登岸；而一到白天戰區又遭國軍海空軍所宰制，無法增兵援助，以致第二梯隊援軍只能隔海興嘆。

第二日

10月26日凌晨，解放軍自廈門蒐羅尚未遭到擊毀的船隻，由第246團團長孫玉秀率該團2個連和解放軍第85師259團2個連增援；第246團在湖尾登陸，另2連在古寧頭登陸。國軍空軍在戰役夜中頻繁用C-47運輸機投擲照明彈，導致解放軍擅長的夜間戰鬥隱蔽技巧被折抵大半，這批援兵尚未登岸便形跡敗露，甫上岸便遭國軍圍攻只能且戰且走。當日天亮，第246團增援部隊突破包圍，在古寧頭和該地據守解放軍合流。
凌晨2時，海軍第一艦隊所屬太平號護航驅逐艦開入古寧頭西北方金廈水道巡弋，預防廈門方面渡海增援。是日拂曉，國軍在坦克、火炮和飛機配合下，向堅守古寧頭登島部隊猛烈反擊。清晨6時30分，高魁元指揮反擊，第一一八師從浦頭以北海岸線向林厝攻擊。因為解放軍占據當地以鋼筋水泥製成的民宅固守還擊，在當日戰況激烈。9時多，國軍「空軍B-24轟炸機、P-47戰鬥機及海軍砲火轟擊」。
10月26日，胡璉抵戰地，經面報戰況後，胡璉親與各師長通話指示，士氣大振。上午10時，胡璉到達大、小金門間之「水頭」。胡璉在LST戰車登陸艦接駁下自大、小金門間之水頭碼頭登島。上午11時，東南軍政長官公署副長官羅卓英偕第十二兵團司令官胡璉抵水頭村，晤湯恩伯後，旋即赴湖南高地，將部署略為調整。到湯恩伯指揮所，午餐在棹，胡璉立即「電話」正在前線指揮作戰之高魁元，詢問目前狀況，並先向他道賀：「恭喜大捷，是否已清掃戰場完畢？」高以低沉聲音答說：「戰事仍在激烈進行中，形勢相當嚴重，即派車迎司令官來。」和高魁元通話之時，胡璉始知自己尚無掌握當前戰況，也不了解湯恩伯、羅卓英兩人會晤細節；因此隨即乘車前往湖南高地前線了解狀況，確知戰線已經穩定：國軍已克復安岐，正朝林厝攻堅。隨後以先前獲命之指揮權直接指揮高、劉兩軍長，攻入林厝的國軍隨即進入巷戰，上午12時攻復林厝，下午3時收復南山、第三五二團於同時攻入北山。26日黃昏時，解放軍防禦圈已經退守到古寧頭村內，而國軍各團亦陸續合圍該地，自此國軍已控制住大部分金門戰線，進入戰役最終階段。
第一一八師師長李樹蘭以第三五三團接替第三五二團，偕同戰車繼續攻擊任務。激戰至晚上10時，解放軍登陸部隊利用夜暗向北突圍至海邊，未尋到船隻，遂向東南山區轉移。

第三日

10月27日午夜時分，解放軍彈盡糧絕，「突圍至海岸」，1,300餘人被困在古寧頭以北之海岸斷崖下的沙灘，這批部隊主要是26日凌晨增援而來；察覺解放軍藏匿之處後，國軍展開圍攻，經過4個小時戰鬥，擊斃解放軍400餘人，剩下900多人無力再戰，最後集體投降。
雖然戰場趨近絕望，但解放軍並沒有因此放棄增援，到27日凌晨3時，尚有解放軍第259團第三連約30餘人，乘汽艇一艘到達古寧頭北側海岸，只是登陸後亦盡為國軍所俘。是日晨，國軍已「盡殲」古寧頭村內之敵，但不久發現村北岸尚有解放軍甚多，係10月26日夜由廈門增援而來，船去，人不能攀登，經曉諭後，乃棄械而降。至此，一場大戰始告結束。上午9時30分，李樹蘭由古寧頭直接向胡璉作如上報告。至此古寧頭戰役大規模組織性作戰始告終。不久，東南軍政長官陳誠飛臨金門，曾親至戰地視察，歸時途次一三二高地，100餘名人槍整齊之解放軍突由深壕密草中，旋即出降。。對陳誠而言幸運之處是他們已無戰意，隨即投降。此時乃下午4時餘，應為真正之戰事結束。下午，在雙乳山附近，解放軍登陸部隊被國軍發現包圍。

第四日

血戰至10月28日下午，解放軍彈盡糧絕，第246團團長孫玉秀負傷後自盡，其餘被俘。金門島上戰鬥逐漸平息，零星戰鬥持續更長。
據聞當時解放軍第28軍副軍長蕭鋒和政治部主任李曼村面對葉飛失聲痛哭，葉飛報告華東軍區司令員陳毅並報中央軍委，請求予以處分。
此外，金門島上逗留時間最久的是解放軍第253團團長徐博，他在10月26日晚突出重圍進入東部山區後，就一直隱蔽在北太武山山洞中，靠挖食地瓜等植物充飢，等待解放軍第二次登陸。一位北太武山村民向胡璉抱怨他種的紅薯常常在夜晚被部隊偷吃，胡璉出動一個師兵力搜山。直到1950年1月，徐博「長髮長鬚，形同野人」才被國軍發現，後來押到臺灣處決。

雙方損失

古寧頭戰役解放軍共有三批登陸，首批為10月24日晚的第28軍第82師第244團、第28軍第84師第251團、第29軍第85師第253團和第28軍82師第246團第三營，共10個建制營；第二批是10月25日晚的第28軍第82師第246團一營二連和兩個機砲排，以及從全團抽調的30多名戰鬥骨幹（共300多人）、第29軍第87師第259團三營的200多名戰鬥骨幹（實際上島100多人）；第三批是10月26日晚第29軍第87師第259團一營二連的30多名（接應傷員撤退），合計9,086人，其中船工、民夫約350人。
解放軍戰史稱進攻金門島戰鬥，共斃傷國軍9000餘人，但登島部隊共3個多團9086人（內有船工、民夫等350人）大部陣亡；是第二次國共內戰中解放軍一次重大損失。被俘者包括第251團參謀長郝越三、政治處主任王學元、第246團副團長劉漢斌，倖存被俘者僅3,900餘人，其中營長6人、連長5人、指戰員1人，大部被送至臺中干城營房關押；其他官階較高，如第251團團長劉天祥是用飛機運回（有說是在臺絕食死亡）。
國軍戰史稱俘虜解放軍7,364人，細節數字是第201師俘虜1,495人，118師俘虜3,204人，11師俘虜735人，18師俘虜995人，14師俘虜935人，兩者之說法差異甚大。據沈志華在《金門內戰與冷戰》一書中記載，國軍報導斃傷、俘虜解放軍多次變化，版本眾多，有1.2萬、1.5萬、1.7萬、2萬人不等。胡璉在《金門憶舊》一書中甚至說僅船工俘虜了就達千人。
東南行政長官公署曾經召開新聞發布會聲明」國軍傷亡不足3,000人。「國軍戰史稱陣亡1,267人，傷1,982人，共3,249人。陣亡最高職務的是十九軍十四師四十二團團長李光前上校。除了傷亡外，還有一個被俘數字。據幾個參戰團當時電報匯報「一梯隊三個團在登陸時各俘獲數百至千餘俘虜。」。解放軍戰史稱殲滅國軍9,000多人。
解放軍渡海登陸，遭逢守軍堅強抵抗後，不預期被第十八軍第一一八師截擊，在解放軍無後援、無退路之下，只有投降，因而有如此多解放軍被俘；事實上，除了少數幹部，絕大多數被俘解放軍都是先前在中國大陸作戰遭解放軍俘虜之國軍，因此在「新生訓練營」訓練數個月後，就全數分發各部隊歸建為國軍。

解放軍方面

金門戰鬥後，解放軍第10兵團專門召開會議檢討戰役這次戰鬥失利主要教訓是：在勝利的形勢下，高級指揮員輕敵麻痹，盲目樂觀，戰鬥任務尚未全部完成，就過早地轉移了工作重心，忙於城市接管，把攻打金門的指揮責任交給了第28軍；對渡海登陸作戰的特點和困難認識不足，船隻準備不充分；敵情掌握不準確，對國軍第12兵團兩個軍增援金門，敵我力量發生重大變化的情況，未及時察覺，只強調抓住戰機，仍按原計劃發起戰鬥；戰鬥組織指揮不嚴密，不同建制的三個團沒有統一指揮，倉促發起戰鬥，這就難以避免造成嚴重的損失。據第三野戰軍副司令員粟裕、代參謀長袁仲賢、副參謀長周駿嗚10月28日致第10兵團司令員葉飛、參謀長陳慶先及福建省委電稱：「你們以三個團登陸金門島，與敵三個軍激戰兩晝夜，後援不繼，致全部壯烈犧牲，甚為可惜。」。
10月29日，中共中央軍事委員會發出《關於攻擊金門島失利的教訓的通報》，指出：「查此次損失，為解放戰爭以來之最大者。其主要原因，為輕敵與急躁所致」。「當你們前次部署攻擊廈門之同時，擬以一個師攻佔金門，即為輕敵與急躁表現。當時，我們曾電你們，應先集中力量，攻佔廈門，而後再轉移兵力攻占金門，不可分散力量。但未引起你們深刻注意，致有此失。除希將此次經驗教訓深加檢討外，仍希鼓勵士氣，繼續努力，充分準備，周密部署，須有絕對把持時，再行發起攻擊。並請福建省委，用大力為該軍解決船隻及其他戰勤問題。至失散人員，仍望設法繼續收容」「當此整個解放戰爭結束之期已不在遠的時候，各級領導幹部中主要是軍以上領導幹部中容易發生輕敵思想及急躁情緒，必須以金門島事件引為深戒。對於尚在作戰的兵團進行教育，務必力戒輕敵急躁，穩步地有計劃地殲滅殘敵，解放全國，是為至要。」
鑑於古寧頭戰役慘敗，在第四野戰軍發動海南島戰役前，毛澤東專門發電報要求四野向第三野戰軍調查渡海作戰經驗，以免重蹈金門覆轍。1949年12月18日，毛澤東於蘇聯給林彪（時任中共中央中南局第一書記、解放軍第四野軍司令員、華中軍區司令員）電報：「……必須集中能一次運載至少一個軍（四五萬人）的全部兵力，㩦帶三天以上糧食，於敵前登陸，建立穩固灘頭陣地，隨時獨力攻進而不要依靠後援。因為潮水需十二小時後第一次載運船隻方能返回運第二次，而敵可用海空軍切斷我之運輸，故非選擇時機一次載運一個軍渡海登陸，並能獨力攻進，建立基地，取得糧食，便有後援不繼，遭受重大損失之危險。三野葉飛兵團，於占領廈門後，不明上述情況，以三個半團九千人進攻金門島上之敵三萬人，無援無糧，被敵圍攻，全軍覆滅。你們必須研究這一教訓。海南島之敵，可能較金門敵人戰力差些，但仍不可輕敵。請告鄧（解放軍第15兵團司令員）賴（解放軍第15兵團政治委員）及四十軍四十三軍注意，並望你向粟裕調查渡海作戰的全部作戰經驗，以免重蹈金門覆轍。……」
解放軍雖然很看重古寧頭戰役失利的教訓，但並沒有將其視為重要戰役。中國人民解放軍國防大學教授徐焰在其著作中，稱金門戰鬥失利只是第二次國共內戰末期一個小插曲，僅是暫時延緩解放軍攻取東南沿海島嶼，並未影響全局。解放軍多次檢討與總結，開始重視渡海作戰特殊規律，再經過登步島戰役失利總結，解放軍初步掌握渡海作戰規律。
古寧頭戰役結束後，解放軍吸取經驗，逐步奪取中國大陸東南沿海島嶼，或國軍因戰略理由主動撤退。古寧頭戰役後半年，解放軍成功用類似的萬船齊發戰術偕同瓊崖縱隊佔領海南島。。之後相繼攻佔萬山群島，原本解放軍希望在逐步累積實力，預定在1950年5月由第10兵團動用5個師攻佔金門島的作戰，最後因韓戰爆發、第七艦隊開入臺灣海峽協防下取消這項用兵計畫。

戰後發展

古寧頭戰役後，首批接戰的201師、二十二兵團各部計畫撤回臺灣整補，原定在大嶝島戰役折損慘重的二十五軍也應返回台灣休整，但是在陳誠運作下，45師被劃入十二兵團編制轉守小金門、大膽島等金門西側島嶼，第十二兵團則於12月1日奉命就地改組為金門防衛司令部。第十八軍軍長高魁元一直做到陸軍總司令、參謀總長、國防部長。

後續

被俘解放軍，包括第二四四團團長兼政治委員邢永生、參謀長朱斐然、政治處主任孫樹亮、特務連副指導員劉繼堂，第二五一團團長劉天祥、副團長馬紹堂、政治委員田志春、第二五三團參謀長王劍秋等。邢永生、朱斐然有說是在臺關押時死亡，有說是赴臺後失蹤。二五三團政委陳利華(1920-1981；本名陳麗華；戰役後解放軍登載負傷失蹤)戰役失利後不願被俘，化名陳開中假冒國軍已戰死兵員身分、再以死扮活「歸隊服役」，後考入軍校政工幹校，並進入保密局服務，官拜上校；在試圖自香港恢復與解放軍間聯繫時事跡敗露被捕，1981年以"匪諜罪"(內亂罪)遭槍決。臺灣民主化以後2009年陳利華的兒子陳啓明為父翻案不成。
1950年開始，被俘解放軍陸續釋放回中國大陸，不願投降者主要分三批，在1950年3月、1950年7月18日（529人）、1950年7月22日（387人）遣返，總遣返者約9百餘名；但後續仍有零星戰俘個別遣返，最後一位遣返者是在1956年1月與南日島戰役俘虜一同釋放的二五三團第一營第一連士兵許道位。；滯留臺灣的降兵在服役年限屆滿後陸續除役，1980年代，陸續有人返回中國大陸探親。