Garth Davis' deeply moving directorial debut Lion is about as uplifting as a film can get, without ever feeling emotionally manipulative.

This remarkable true story is based on Saroo Brierley's book A Long Way Home, which details his journey from becoming tragically separated from his family as a young boy in India, to being adopted by a loving Australian couple and, astonishingly, reunited with his birth mother a quarter of a century later.

We meet the young Saroo, played with effortless charm by newcomer Sunny Pawar, as a five-year-old boy growing up in central India. His mother (Priyanka Bose) works as a labourer to support her children, while Saroo and his elder brother Guddu (Abhishek Bharate) supplement their hand-to-mouth existence through various means such as siphoning coal from trains and selling it for milk.

Abhishek Bharate and Sunny Pawar as Guddu and Saroo

One fateful night, the close-knit brothers head out together to find some work. Saroo ends up falling asleep on a bench at a train station with strict instructions from Guddu to stay put, but when he wakes up alone and confused hours later, he boards a train to try and find his brother. After falling asleep again, Saroo finds himself on a freight train hurtling towards its final destination of Calcutta, 1,600 kilometres from his hometown.

Here, the street-smart young boy manages to survive in the mayhem of the city and evade predatory child abductors, before being taken into an orphanage, where things aren’t much better and a blind eye is turned to the abuse of its occupants. Fortunately, it's not long before he is adopted by a devoted Australian couple Sue (Nicole Kidman) and John (David Wenham) and begins his new, privileged life on the island of Tasmania. A year later, Sue and John adopt a second son, Mantosh (Divian Ladwa), who has been more deeply affected by his childhood experiences and has emotional outbursts where he self-harms.

Nicole Kidman outs in an understated performance as his adoptive mother Sue

The film picks up 20 years later, with Dev Patel stepping in as the confident and cheery Saroo, now a grown man about to embark on his first year of university in Melbourne. Here he meets Lucy (Rooney Mara) and a group of friends who encourage him to try and track down his family and hometown using Google Earth, which was newly released technology at the time.

This is where the film dips a little, as there's only many times we can watch a person tap-tapping on a laptop or putting pins on a wall-chart before it becomes tedious. However, peppered among those scenes are insightful moments, as Patel portrays Saroo's struggle with race and identity, and devastating worry for his long-lost family, who he knows will have spent every day of their lives searching for him.

Dev Patel plays the grown-up Saroo with nuance and complexity

The eventual emotional reunion makes this slightly weaker mid-section well worth the wait, and Patel and Bose are outstanding in the touching scenes which shouldn't leave a dry eye in the house.

Despite its flaws, there's much to love here, most of all the heartfelt performances from the all-round excellent cast and the perfectly executed cinematography, which captures the intensity of teeming Calcutta in the film's suspenseful opening section, as well as many striking sweeping shots of Australia and India, mirroring Saroo's persistent Google Earth search.

Film lags in the middle but the end makes it worth the wait

This is a carefully grafted and artfully conceived big-screen adaptation of a truly astonishing story which is both a tearjerker and a crowd-pleaser, without being a sell-out.

Sarah McIntyre