James Norton as Sidney Chambers