Hanlon has a BFA in Drama from Syracuse University. His mother is named Teresa, and his father is Gavin.
After appearing in numerous commercials, Hanlon began work in the theatre. He has appeared on Broadway as Gordon, Mark, and Roger in Rent, and played Fiyero in the national tour of Wicked. Off-Broadway, he has starred as Frederic in The Pirates of Penzance and Austin Bennett in I Love You Because. He also appeared in the world premiere of Edges. On screen, he starred as Tim Trull on the web series Submissions Only, which ran for three seasons, and played Steven on Modern Family. In 2015, he starred as Pete in the new play The 12 at the Denver Center, for which he won a Henry Award.