Butler was born in Glasgow, Scotland, the son of Margaret and Edward Butler. For the first two years of his life, he lived in Montreal, Quebec. When his parents divorced, his mother took him and his siblings back to Scotland, to her hometown of Paisley. He had no further contact with his father until he was sixteen years old. Butler's father died of cancer when Gerard was 22.
Butler graduated from Glasgow University Law School before embarking on his early career in stage plays. His first roles were in Coriolanus and in the stage version of Trainspotting. Butler landed his first film role as Archie Brown in 1997's Mrs. Brown alongside Judi Dench and Billy Connolly. That same year, he appeared in a minor role in the James Bond film Tomorrow Never Dies. He followed this with several appearances in various independent films and several television series in the UK, including a role in the series Lucy Sullivan Is Getting Married and the films The Cherry Orchard, One More Kiss, and Harrison's Flowers.
In 1999, he began filming his first lead role as Attila the Hun in the American TV miniseries Attila. During filming of Attila, the production actually stopped in order for him to film his second lead role as Dracula in Wes Craven's Dracula 2000. Both films were released in 2000. In this early part of his career his most notable work was in The Jury, a critically acclaimed UK TV miniseries. In Timeline which was released in 2003, Butler once again starred alongside Billy Connolly. Based on the Michael Crichton book of the same name, Butler played archaeologist Andre Marek. Also in 2003, he starred as Terry Sheridan opposite Angelina Jolie in Tomb Raider: The Cradle of Life. The following year he was cast in the title role of Joel Schumacher's film rendition of Andrew Lloyd Webber's The Phantom of the Opera, co-starring Emmy Rossum, Patrick Wilson, and Ciaran Hinds. Prior to filming The Phantom of the Opera, Butler had completed the independent film Dear Frankie, which co-starred Emily Mortimer.
In 2005, he starred in The Game of Their Lives. The same year he was cast in as Beowulf in the Sturla Gunnarsson film production of Beowulf & Grendel. Later this same year Butler began production of 300, in which he starred as King Leonidas of Sparta. The film, directed by Zack Snyder and co-starring Lena Headey, was released in March 2007.
In 2006, Butler completed filming Butterfly on a Wheel (renamed Shattered in the U.S.) and began work on PS, I Love You with Hilary Swank, based on Cecilia Ahern's novel and released in December 2007.