李師師原本是汴京城內經營染房的王寅的女兒,三歲時父親把她寄名佛寺,老僧為她摩頂,她突然大哭。老僧人認為她很像佛門弟子,因為大家管佛門弟子叫「師」,所以她就被叫做李師師。過了一年,父親因罪死在獄中。她被鄰居撫養長大,漸漸出落得花容月貌,皮膚白皙,被經營妓院為業的李媼將她收養,教她琴棋書畫、歌舞侍人。一時間李師師成為汴京名妓,是文人雅士、公子王孫競相爭奪的對象。最後連宋徽宗也聞其名而想一親芳澤。高俅、楊戩自然慫恿宋徽宗,並信誓旦旦地保證不會走漏消息。
一見到李師師,宋徽宗就覺得這些年簡直是白活了。李師師不卑不亢、溫婉靈秀的氣質使宋徽宗如在夢中。李師師與高俅早就相識,見位高權重的高大人竟然對這位陌生的客人畢恭畢敬,心下疑惑,但可以確定這也是得罪不得的達官顯貴,於是慇勤侍奉。
第二天天還沒亮,宋徽宗急忙穿好衣服,與高俅楊戩趕回去上朝。從此宋徽宗對後宮佳麗視若無睹,隔三差五就以體察民情為由,出宮來李師師這裡尋歡作樂,有時還叫著大學士王黼同去。李師師漸漸也知道了他的真實身份,萬歲爺駕臨,怎敢不百般奉承!如今的李師師可非往日可比,身份雖然仍是名妓,卻也「名花有主」,有權勢的王公貴族也只能望「師」興嘆。
可是偏有武功員外郎賈奕以前與李師師交情深厚,一日偶遇李師師,便去她家中留宿,酒後不免醋意大發,寫了一首諷刺宋徽宗的詞:閑步小樓前,見個佳人貌似仙;暗想聖情琿似夢,追歡執手,蘭房恣意,一夜說盟言。滿掬沉檀噴瑞煙,報導早朝歸去晚迴鑾,留下鮫綃當宿錢。宋徽宗聽說後大怒,差點殺了他,最後還是貶到瓊州做了個參軍。
其實在所有的客人中,李師師最中意的是大才子周邦彥。有一次宋徽宗生病,周邦彥趁著這個空兒前來看望李師師。二人正在敘闊之際,忽報聖駕前來,周邦彥躲避不及,藏在床下。宋徽宗送給李師師一個新鮮的橙子,聊了一會兒就要回宮,李師師假意挽留道:「現已三更,馬滑霜濃,龍體要緊。」而宋徽宗正因為身體沒全好,才不敢留宿,急急走了。
周邦彥酸溜溜地添了一首詞:並刀如水,吳鹽勝雪,纖指破新橙。錦幃初溫,獸香不斷,相對坐調箏。低聲問:向誰行宿?城上已三更,馬滑霜濃,不如休去,直是少人行。豈知宋徽宗痊癒後來李師師這裡宴飲,李師師一時忘情把這首詞唱了出來。宋徽宗問是誰做的,李師師隨口說出是周邦彥,話一出口就後悔莫及。宋徽宗立刻明白那天周邦彥也一定在屋內。臉色驟變,過了幾天找藉口把周邦彥貶出汴京。
李師師為其送行,並將他譜的一首《蘭陵王》唱給宋徽宗聽:柳蔭直,煙裡絲絲弄碧,隋堤上,曾見幾番拂水,飄綿送行色。登臨望故國,誰讖京華倦客,長亭路,年去歲來,應折桑條過千尺,閑尋舊蹤跡,又酒趁哀弦,燈映離席。梨花榆火催寒食,愁一剪,風快半篙波暖,回頭迢遞便數驛,望人在天北淒側。恨堆積,漸別浦縈迴,津堠岑寂。斜陽冉冉春無極,記月榭攜手,露橋聞笛,瀋思前事似夢裡,淚暗滴。宋徽宗也覺得太過嚴厲了,就又把周邦彥招了回來。
宋徽宗玩物喪志,對邊境上的危機滿不在乎,終於在靖康之難成了俘虜。金軍本想連李師師一起俘虜,但沒有成功。宋朝南渡後,李師師的下落不明,有人說她捐出家產抗金,自己遁入空門。有人說她被金軍掠走,吞金自殺。也有人說她隨便嫁了個商人,後來在錢塘江淹死了。