Barnes, 33, will be replacing the "Once Upon a Time" star after a scheduling conflict emerged before filming the show, reported Entertainment Weekly.
The television series, based on the 1973 film of the same name, tells the story of a futuristic theme park, "Westworld", where robots malfunction after a power surge and begin killing visitors.
Barnes will play the character of a louche bachelor and veteran Westworld guest.
"Westworld" stars James Marsden, Evan Rachel Wood, Thandie Newton, Anthony Hopkins, Jeffrey Wright and Ed Harris.
The show is scheduled to air in 2016.