赵王得到了楚国的宝物和氏璧,秦昭王就派使者来,说要用十五座城池跟赵王换。赵王想不给,又畏惧于秦国军队的强大;想给,又怕被秦王骗,于是向蔺相如求教。
蔺相如对楚王说:“秦王要用城池与大王交换,大王您若不答应,那么理亏的是我们;我们给他和氏璧,而秦王不给我们城池,那么理亏的是秦王。两相比较,宁可答应。就算得不到城池,也要让秦王理亏。我愿意携和氏璧出使秦国,如果秦王不给城池,我一定想办法把它完整地带回来。”
于是赵王派遣蔺相如为使者,带和氏璧到了秦国。秦王见了和氏璧,爱不释手,却不提城池的事。蔺相如看到秦王并不是诚心要用城池交换,就用计骗秦王,又把和氏璧拿了回来,然后派随从揣着玉璧,从小路偷偷返回赵国,自己则留在秦国等候处置。秦王认为蔺相如是个贤人,没有杀他,对他颇为礼貌,然后送他回到赵国。赵王见蔺相如立下大功,就任命他做上大夫。
周赧王三十六年(公元前279年),秦王约赵王在渑池相会,蔺相如同去。大将廉颇送到赵国的国境上,便与赵王告别说:“赵王您去渑池,计算路途的里程以及与秦王相会的礼仪时间,到回来的时间不要超过三十天。假如三十天后您不回来,那么就请准许立太子为王,以断绝秦国挟持大王的企图。”赵王答应了。两国国王在渑池相会。秦王与赵王饮酒,正喝得畅快之时,秦王请赵王弹瑟助兴,赵王不敢拒绝,于是就弹了一曲。蔺相如亦请秦王击缶助兴,秦王不肯答应。蔺相如说:“我与您只相距五步,如果您不击的话,我拼死一搏,可以使颈中之血溅大王之身。”秦王侍卫欲杀相如,相如怒目喝叱,侍卫皆不敢造次。秦王虽不高兴,也只好敲了一下。直至酒宴完毕,秦王始终无法占到上风,加之赵国在军事上始终严阵以待,秦国也就不敢轻举妄动。赵王如期归国,晋升蔺相如为上卿,位在廉颇之上。
廉颇不满地说:“我作为赵国大将,有攻城野战之功,蔺相如原是地位卑贱的人,只以能说善辩而位居我之上,我实在感到羞耻。”便宣称:“我遇到蔺相如,一定要羞辱他一番!”蔺相如听说后,不愿意和他遇见。每逢上朝,常常称病。出门在外,远远望见廉颇的车驾,便令自己的车回避。蔺相如的门客下属都感到十分羞耻,蔺相如对他们说:“你们看廉将军的威严比得上秦王吗?”门客都说:“比不上。”蔺相如说:“面对秦王那么大的威势,我都敢在他的朝廷上叱责他。我虽然没本事,难道单单怕廉将军吗?我是考虑到,强暴的秦国之所以还不敢大举进犯赵国,就是因为我和廉将军在。我们两虎相争,必有一伤。我所以避让,是先考虑到国家的利益而把个人的私怨放在后头啊!”廉颇听说以后,十分惭愧,便赤裸上身背着荆条到蔺相如府上来请罪,两人从此结为生死之交。