An overarching action principle, the principle of minimal free action, exists for ergodic Markov chain dynamics. Using this principle and the Detailed Fluctuation Theorem, we construct a dynamic ensemble theory for non-equilibrium steady states (NESS) of Markov chains, which is in full analogy with equilibrium canonical ensemble theory. Concepts such as energy, free energy, Boltzmann macro-sates, entropy, and thermodynamic limit all have their dynamic counterparts. For reversible Markov chains, minimization of Boltzmann free action yields thermal equilibrium states, and hence provide a dynamic justification of the principle of minimal free energy. For irreversible Markov chains, minimization of Boltzmann free action selects the stable NESS, and determines its macroscopic properties, including entropy production. A quadratic approximation of free action leads to linear-response theory with reciprocal relations built-in. Hence, in so much as non-equilibrium phenomena can be modeled as Markov processes, minimal free action serves as a basic principle for both equilibrium and non-equilibrium statistical physics.