主人公牛虻原名亚瑟,成长在佛罗伦萨一个富有的家庭,是神学院院长蒙泰尼里的私生子。亚瑟在大学里参加了秘密革命组织青年意大利党,蒙泰尼里察觉此事,对此几为不安。后来,蒙泰尼里赴罗马任主教之职,卡尔狄神甫接任神学院院长。亚瑟向卡尔狄神甫忏悔时受骗说出了秘密革命组织的名称和自己偷运政治书籍的事实。卡尔狄神甫随即告密,亚瑟和一批党内同志被捕。
亚瑟出狱后,他的行为受到了党内同志的鄙弃,恰在此时,又得知自己的身世之谜。双重打击之下亚瑟精神失常他砸碎神像,留下字条伪称自尽,本人则潜出海关,偷渡去了南美洲。那一年他十九岁。
在南美,他坠入了“真正的地狱之中”。他漂泊流浪,做过杂工和赌窟仆人,被一名水手打成残疾,伤愈后到杂耍班子充当小丑,受尽耻笑和侮辱。非人的遭际极大地改变了亚瑟的相貌,以致十三年后他当年的恋人和父亲面对他竟认不出来。
精神上的变化也是巨大的,回到意大利后,牛虻成了反对教会最激烈的人。他对蒙泰尼里为代表的教会势力进行了猛烈的和不妥协的斗争,力图唤醒对教会心存幻想的人们。
在一次偷运军火的行动中,他们被暗探和骑警包围,亚瑟开枪射击,这时蒙泰尼里突然出现,堵住了牛虻的枪口。牛虻一时精神恍惚,垂下了拿枪的手,因而被捕。蒙泰尼里到监狱中试图劝说牛虻放弃革命,保全性命。牛虻揭露他的伪善,谴着他当年的卑劣勾当。蒙泰尼里终于认出眼前的人正是自己儿子。当牛虻要蒙泰尼里在儿子和上帝之间作出选择时,蒙泰尼里选择了上帝。
在蒙泰尼里主教的同意下,牛虻被判处枪决。但牛虻死后不久,蒙泰尼里也因心脏动脉瘤破裂而突然去世。
为了看这本书,自己的脑细胞减少了一半。