An efficient inexact Newton-Krylov algorithm is presented for the computation of steady two-dimensional aerodynamic flows. The algorithm uses the preconditioned, restarted generalized minimal residual method in matrix-free form to solve the linear system arising at each Newton iteration. The preconditioner is formed using a block-fill incomplete lower-upper factorization of an approximate Jacobian matrix with two levels of fill after applying the reverse Cuthill-McKee reordering. The algorithm has been successfully applied to a wide range of test cases, which include inviscid, laminar, and turbulent aerodynamic flows. In all cases, convergence of the residual to 10 -12 is achieved with a computing cost equivalent to fewer than 1000 function evaluations. The matrix-free inexact Newton-Krylov algorithm is shown to converge faster and more reliably than an approximate Newton algorithm and an approximately factored multigrid algorithm