We show that the approaches to integrable systems via 4d Chern-Simons theory and via symmetry reductions of the anti-self-dual Yang-Mills equations are closely related, at least classically. Following a suggestion of Kevin Costello, we start from holomorphic Chern-Simons theory on twistor space, defined with the help of a meromorphic (3,0) form Ω. If Ω is nowhere vanishing, the theory is equivalent to anti-self-dual Yang-Mills on spacetime. The twistor action yields space-time actions including the Chalmers & Siegel action for ASD Yang-Mills in terms of an adjoint scalar. Under symmetry reduction, these spacetime actions yield actions for 2d integrable systems. On the other hand, performing the symmetry reduction directly on twistor space reduces the holomorphic Chern-Simons action to the 4d Chern-Simons theory with disorder defects studied by Costello & Yamazaki. Finally we show that similar reductions by a single translation leads to a 5d partially holomorphic Chern-Simons theory describing the Bogomolny equations. Contents 1 Introduction 2 From holomorphic to 4d Chern-Simons theory 2.1 Holomorphic Chern-Simons theory on twistor space 2.2 Effective description as a 4d WZW model 2.3 Symmetry reduction to a principal chiral model with WZW term 2.4 Symmetry reduction to 4d Chern-Simons theory 3 Twistor actions 3.1 Overview 3.2 Chalmers-Siegel action 3.3 Trigonometric action 3.4 4d integrable coupled σ-models 4 Real structures 4.1 Lorentzian and ultrahyperbolic signatures 4.2 Real forms of the gauge group 5 Reductions by 1-dimensional groups of translations 5.1 Reduction to the Bogomolny equations 5.2 The 1+2 dimensional chiral model 6 Conclusions A Notation and conventions for spinors B The twistor correspondence in Euclidean signature C The anti-self-dual Yang-Mills equations D Partially holomorphic structures in 4d and 5d Chern-Simons theory E Calculations for trigonometric actions F Novel actions for anti-self-dual Yang-Mills theory G The twistor correspondence in Lorentzian and ultrahyperbolic signature 1 Here ē0 Ā0 is the component along the base while êA ÂA are the components along the fibres of PT ∼ = O(1) ⊕ O(1) → CP 1 .