Actor best remembered for his roles in Pearl Harbor and Black Hawk Down. He also appeared in The Virgin Suicides, 40 Days and 40 Nights, and O. From 2014 to 2016, he starred in the horror series Penny Dreadful.
He worked at a local video store for his first job. He debuted as Bill in the 1998 short film Debutante.
He turned down the role of Superman in the early 2000s.
His parents are Wendy Anne and Daniel Hartnett. He dated actress Scarlett Johansson from 2005 to 2007. In November 2015, he became a father when his longtime girlfriend Tamsin Egerton gave birth to his first child. In August 2017, the couple welcomed their second child. Their third child was born in late 2019.
He starred in Pearl Harbor with Ben Affleck.