KARWAAN is the story of three diametrically opposite individuals on a journey together. Avinash Rajpurohit (Dulquer Salmaan) works in an IT company in Bengaluru and is frustrated with his job. One day he gets a call that his father Prakash Rajpurohit (Akash Khurana) has died in a bus accident while he was on his way to Gangotri. The travel company arranges for his father's mortal remains to be sent to Avinash in Bengaluru. Avinash had a troubled relationship with his father as the latter compelled him to give up his dreams of becoming a photographer.
As a result, he's not quite affected with his demise. Avinash asks his friend Shaukat (Irrfan Khan), who runs a garage, to provide him with a van so that he can carry the mortal remains from the airport to the crematorium. Avinash picks up the body and reaches the crematorium, where he realizes that he is given the mortal remains of a woman (Beena). The woman turns out to be a victim who also died in the same bus accident and her family resides in Kochi, who in a terrible mix up, were provided with Prakash's remains. Avinash hence decides to take advantage of the long weekend and take the woman's remains to Kochi and exchange it with his father's. Shaukat also joins in.
On the way, the dead woman's daughter Tahira (Amala Akkineni) makes a SOS call to Avinash and requests if he can pick up her daughter Tanya (Mithila Palkar) who studies in Ooty and is incommunicado. Shaukat has reservations with this idea but Avinash doesn't listen. He reaches Ooty, picks up Tanya and then they head to Kochi. Unknown to them, a group of small-time goons are also following the trio. What happens next forms the rest of the film.