崔相国在世时,就已将她许配给了老夫人的侄儿郑恒为妻。在寺中,老夫人怕莺莺心情忧郁,就让丫鬟红娘陪其去殿中烧喷鼻香拜佛。莺莺一进大殿,在场的人都被她的仙颜惊呆了。忽然一人大呼:“我去世也。”此人正是洛阳诗人张生,他赴京城赶考,途经河中府来看望同窗好友白马将军,顺便游览寺中景致,今日不想竟然看到如此美女,不禁失落声大叫。莺莺循声转头望去,与张生火热的目光撞在一起,四目相对,莺莺娇羞地低下了头。张生失魂落魄,颠三倒四地向红娘先容自己,莺莺与红娘含笑而去。
张生爱慕莺莺,便向寺中方丈打听莺莺的住处,知道莺莺住在西厢房。张生便与方丈借宿,也住进了西厢房,两人的住处只有一墙之隔。张生自从见了莺莺后,就开始茶饭不思,夜不能寐。一日,老夫人为亡夫做道场,道场内不准男子进入,张生硬着头皮溜了进去,与莺莺再次相见,张生不俗的外表和炙热的眼神触动了崔莺莺埋在心中的深情。张生从小和尚那里得知,莺莺小姐每晚都到后花园内烧喷鼻香。在一个月朗风清的晚上,张生来到后花园内,偷看莺莺烧喷鼻香。看到动情处,张生随即吟了一首诗:“月色溶溶夜,花荫寂寂春。如何临皓魄,不见月中人?”来表达自己的爱意。
莺莺听是张生的声音,也随即和了一首:“兰闺久寂寞,无事度芳春。料得行吟者,应怜长叹人。”吐露自己的芳心。此时,张生的痴情打动了莺莺,崔莺莺也在心里深深爱上了张生。本地有一个叛将叫孙飞虎,他听说了莺莺有倾国倾城之貌,便率领自己的五千兵马,将普救寺层层围住,限老夫人三日之内交出莺莺做他的压寨夫人,寺中所有职员都束手无策,等待老夫人拿主张。老夫人希望侄儿郑恒好好表现一番,没想到郑恒却吓得一句话不说,于是老夫人放话出去,谁能杀退贼兵,就将小姐许配给他。
张生挺身而出,要救莺莺于危难。张生的拜把兄弟白马将军杜确,是位武状元,统领十万大军,镇守在离此不远的地方。张生先让红娘用缓兵之计,稳住孙飞虎,然后写了一封书信给杜确,让他派兵前来,打退孙飞虎。三日后,杜确的援军到来,一鼓作气打退了孙飞虎。老夫人说出的话现在却又想反悔,没办法只好设宴酬谢张生,在宴席上竟让莺莺认张生作哥哥。莺莺的笑脸僵在了脸上,张生的脸上也失落去了红色。宴席不欢而散。
看到这些,丫鬟红娘心中朝气不已,她气老夫人不取信义,开始同情两人的爱情,便私下里安排他们见面。红娘为张生献计,让他月下弹琴表白自己的心思,莺莺听后动情不已,便叫红娘前去安慰。张生叫红娘带给莺莺一封信,书写自己的相思之苦,莺莺复书写道:“待月西厢下,迎风半户开。隔墙花影动,疑是美男来。”张生被突如其来的幸福冲昏了头脑,竟理解成跳墙过去约会。
当晚,张生赴约来到后花园里,他知道莺莺就在墙后面,于是爬墙跳了过去,看到莺莺便把她搂到怀里。莺莺大惊,怕被在角门把风的红娘瞥见,于是拿出大小姐的架势训斥张生不礼貌。张生以为莺莺不喜好自己,回去就一病不起。红娘前来探望张生,暗示夜里莺莺会来这里相会,张生精神为之一振,相思病好了大半。
深夜,莺莺在红娘的掩护下,来到张生的住处,与张生恩爱缠绵,私订了终生。老夫人看莺莺这些日子神色恍惚,便疑惑她与张生有越轨行为。于是叫来红娘进行拷问,红娘无奈,只得如实说来。但机警的红娘用“以子之矛攻子之盾”的方法,拿起“信义”的大旗,摆出掩护封建纲常和家族利益的姿态,以堂而皇之的教条压住了老夫人。老夫人无奈,为了相国府的颜面只好自认不利又以相国府不要白衣半子为由,难堪张生必须取得功名,才能娶到莺莺。
在碧云天,黄叶地,北雁南飞的时节,莺莺在十里长亭摆下筵席为张生送行,再三打发张生此去不管结果如何,都要尽早回来。张生不胜惆怅,起誓定回来迎娶莺莺,至心不变。两人在老夫人的敦促下挥泪告别。张生到京城存心应试,果真考取了状元,连忙写信向莺莺报喜。这时郑恒来到普救寺中,捏造谎话说张生变了心,成了尚书的半子。本来就希望“亲上加亲”的老夫人听信谗言,再次赖掉张生的婚事。适值郑恒与莺莺成亲之日,张生以河中府尹的身份归来,白马将军杜确也来祝贺。原形大白后,郑恒羞愧难言,一头撞去世。张生与莺莺历经弯曲后终于结合,正应了那句“有情人终成家眷”。