But Wednesday equalised in the 26th minute through trialist Luke Cornwall. He shrugged off a challenge from John Anderson following Kevin Pressman's long clearance, then lobbed Paul Musselwhite from 20 yards.
Pressman had to save from Ryan France and Steve Melton before City regained their lead 3 minutes before half time. Holt crossed from the left and Craig Armstrong's miskick sliced past Pressman and into his own net.
City made it 3-1 a minute after the break. Steve Burton found France, and after controlling he volleyed home left-footed.
Substitute Simon Russell had chances to add to the lead, while makeshift striker Greg Strong also saw a shot saved as City ran out comfortable winners in front of 286 at Hillsborough.
Rotherham are next up for City at Church Road next Wednesday, kick-off 7pm.
City line-up: Musselwhite; Wiseman, Whittle, Anderson, Burton; France, Melton, Keates, Holt; Donaldson (Russell 45), Strong.
Un-used subs: Harvey, Cooper, Byron, Tomlinson.