רוברט אנגיאר (יו ג'קמן) ואלפרד בורדן (כריסטיאן בייל) התחילו כשוליות קוסמים וכחברים. כשהם הופכים לקוסמים מתפתחת ביניהם יריבות ידידותית, שהופכת, על רקע סוף המאה ה-19 ותחילת המאה ה-20 בלונדון, למאבק. המאבק הופך למלחמה של ממש, רווית אובססיות, רמאות וקנאה, ובעלת תוצאות קטלניות. בניסיון נואש למצוא את הטריק המושלם והאשליה שתסייע להם לגבור האחד על השני הם מסכנים את חייהם של כל הסובבים, ולא בוחלים אפילו ברצח למען היוקרה.