林爽文为福建漳州平和县人。乾隆三十八年(1773年)随其父迁到台湾彰化县大里代庄。以耕田、赶车为业,曾充当县衙捕役。乾隆四十七年(1782年),福建天地会首领漳州人严烟渡海至台湾彰化,以开设布店为掩护发展天地会组织。第二年林爽文加入天地会,因其结交广泛,在当地有一定声望,遂成为彰化地区天地会首领。
台湾地区物产丰富,土地肥沃,清朝官府对台湾人民的经济掠夺和政治压迫均十分严重。时地方官将在台湾作官视为肥缺,无不拼命搜刮;政治上对台湾人民特别是高山族人民的压迫也较内地更甚,“狱有不能结者,则诱杀生番以归狱”。官府的暴行激起台湾人民的强烈反抗,各地抗暴事件时有发生,天地会组织在台湾更是传播迅速,影响广泛。
乾隆五十一年(1786年)八月,林爽文与好友林泮、林领、林水返、张回、何有志、王芬、陈奉先、林里生等在大里代山内车轮埔结拜立会,约誓有难相携,有事相助,积极发展会众,准备举行反清武装起义。由于入会者日益增多,声势渐大,遂引起官府注意,是年十一月,彰知县俞峻、副将赫生额、游击耿世文等率官军六百余人前来逮捕林爽文等,驻扎在离大里代五里的大墩。他们焚烧村庄,威胁村民,逼其擒献林爽文等人,引起当地农民群众的强烈愤慨。
林爽文遂“因民之怨”,以“安民心,保家业”为号召,于十一月二十七日夜率领天地会会众袭击清营,击毙俞峻、赫生额、耿世文等,并释放狱囚,开仓放赈,打开官府武器库武装自己。十二月初一日,起义军攻克淡水(今新竹),初六日占领诸罗(今嘉义)。十三日,台湾南部天地会首领庄大田起义响应,攻占凤山(今高雄),知县汤大奎自杀。随即,各地各地会组织纷纷起义响应,起义群众发展到十余万人。
各地起义军首领公推林爽文为领袖,称“盟主元帅”,以县署为大元帅府,建立“天运”(后改“顺天”)年号,建立农民政权。林爽文以杨振国为副元帅,高麟为总爷,王作为征北大元帅,陈秀英为中南总统大元帅,王芬为平海大将军,温道为护驾大将军,柯春为镇国大将军等等。各路将军分领各旗,每旗二、三百人不等。南路起义军庄大田称“洪号辅国大元帅”,部下分设元帅、将军、先锋、招讨等等。南北两路互相呼应,协同作战,沉重打击了清廷在台湾的统治。
林爽文起义军军纪严明,凡缴获物资一律归公,损坏居地财物“失一赔二,焚茅赔瓦”。所获钱粮等物除供应军需外,还分给各地贫苦农民。对殷实富户则强令其出银助饷。
另外,起义军非常注意恢复生产和维持社会安定,多次颁布文告,号召军民“军归伍、民安业”,“务宜安分耕农”,故深受广大人民群众的欢迎与支持。在起义军占领区,物价低廉,秩序稳定,人心归附,从者日众,声势越来越大。乾隆五十二年(1787年)正月,林爽文率军南下,会合庄大田起义军进攻台湾府城(今台南市),但未能攻下。
闽浙总督常青闻台湾事变,急派水师提督黄仕简、陆路提督任承恩等率兵赴台镇压。在当地地主武装的支持下,清军夺回彰化、诸罗。林爽文遂放弃七取府城计划,回师北上,再克彰化,包围诸罗。清廷又以常青为将军,江南提督蓝元枚、福州将军恒瑞为参赞,调集广东兵四千、浙江兵三千、驻防八旗兵千人至台湾对起义军进行围剿。常青老迈无能,胆小如鼠,只知结营自保;黄仕简部龟缩城中按兵不动;任承恩也停在鹿仔港畏靡不前。
是年二月,庄大田诱总兵郝壮猷入凤山空城,随后派义军战士扮作民人混入城中。三月初八日,庄大田率主力突袭凤山,与城中战士里应外合,一举歼灭清军三千余人,复占凤山。郝壮猷败回台湾府城,被斩首示众。庄大田二克凤山后,约林爽文再次联合攻打台湾府城。五月起义军号称十万。直逼府城外十里之地。城中清军士气低落,因不服水土而病者达千余人。正当城破在即的关键时刻,负责攻打南门的义军败类庄锡舍率所部两千余人投降清军,致使起义军发生内乱,功败垂成,被迫撤围而去。
二次会攻府城失败后,林爽文率北路起义军集中力量围攻诸罗。诸罗地处台湾南北要冲,为双方必争之地。总兵柴大纪以四千清军困守孤城,拚死抵抗,常青先后派总兵魏大斌、参将张万魁、游击田兰玉、副将蔡攀龙等三次往援,谋解诸罗之围,均被起义军击败,只有少数人窜入城中。林爽文以数万人马围城数层,分兵截断诸罗粮道,城中军兵只得以地瓜、野菜充食。义军还多次派人混入城中充当内应,并命人在阵前呐喊喧哗以扰乱敌人军心。但因起义军内部存在着严重弱点:林爽文虽为义军盟主,却不能真正做到事权归一,属下各军多分散作战,各行其是;参加起义者多为失业、半失业的流民,斗志不坚,敌我界线模糊,一遇挫折,或受诱惑,便倒戈降敌。所有这些,造成起义军对诸罗城围攻前后达半年之久,却始终未能攻破。
当乾隆意识到,林爽文领导的天地会起义并非是“立即扑灭”得“么么乌合”时,凤山、彰化、诸罗三县的绝大部分地区已然失陷,这对于只有一府四县的台湾来说当然是非常严峻的。十月,清廷派陕甘总督福康安、领侍卫内大臣海兰察至台湾代替常青指挥各路官兵围剿起义军。
福康安等以少数人马进攻大里杙(今台中市大里区),牵制起义军力量,亲率主力进攻包围诸罗的起义军。十一月初八日,清军七千余人与起义军激战于仑仔顶,海兰察亲率数十名巴图鲁冲入起义军阵中,起义军败退牛稠山,复为清军所败,只得撤诸罗之围,退守大里代。福康安等督清军大举进攻大里代,林爽文率起义军万余人奋起迎击,终为清军所败,大里代失守。起义军退至集集埔,屡遭挫败,力量损失殆尽,集集埔复为清军攻陷,林爽文率数十名亲信进入高山族居住的深山密林中。
乾隆五十三年(1788年)正月,福康安派广东屯练扮作民人进入深山,在老衢崎地方将林爽文等人俘获,解往北京,三月在北京被凌迟处死。南路庄大田起义军在林爽文失败后遭到清军全力镇压,屡遭失败。凤山被清军攻陷后,庄大田率部退守台湾最南部的郎峤。清军水路并进,包围郎峤,庄大田被俘遇害,起义失败。此后,林文爽部将陈周全、陈光爱、陈容、黄朝等先后集合天地会员在台湾各地起义反清,均被镇压。
林爽文起义,前后经历一年零三个月,参加人数达数十万,它不仅是台湾历史上规模最大的农民起义,而且是清代历史上一次较大的农民起义。作为胜利者的乾隆付出的是数百万的军饷,仅乾隆五十二年十月从福建邻省调拨的银两就有三百万。对胜利的一方来说,要搞清天地会的内幕仍需花费大量的人力物力。