《二十一天》讲述了海舟市罗百百货大楼在新年前夕突然坍塌,十三名顾客与员工被埋废墟之下的生死故事。被困者中,消防员何小光(欧豪饰)利用专业知识组织自救,却因物资分配和隐藏的秘密引发猜忌。废墟外,刑警叶萧(王志文饰)在指挥救援时发现事故可能涉及多年前的悬案。随着时间推移,有限的食物、水源和氧气让废墟下的生存环境愈发残酷,人性的自私与善良不断碰撞。而神秘被困者周乙(姜武饰)的异常举动,更让这场求生演变成一场暗藏玄机的心理博弈。当救援临近成功时,废墟内外积压的矛盾与秘密同时爆发,将所有人推向道德与生存的终极考验。