FBI-agenten Dylan Rhodes (Ruffalo) og Interpol-detektiven Alma Dray (Laurent) prøver å spore opp et team av illusjonister, kjent som , bestående av Daniel Atlas (Eisenberg), Merritt McKinney (Harrelson), Henley Reeves (Fisher) og Jack Wilder (Franco). Disse illusjonistene gjennomfører bankran under forestillingene sine og deretter gir pengene de stjeler til sitt publikum. Det ser umulig ut å avsløre dem, selv med innsikten til illusjonistavsløreren Thaddeus Bradley (Freeman). Men når raner bankkontoen til millionæren Arthur Tressler (Caine), begynner etterforskerne å mistenke at ranene kun er en distraksjon for et større komplott. Deres største problem er at de aldri kan være helt sikre på hva som er sant og hva som bare er en illusjon.