Non-dispersive and weakly dispersive single-layer flows over axisymmetric obstacles, of non-dimensional height M measured relative to the layer depth, are investigated. The case of transcritical flow, for which the Froude number F of the oncoming flow is close to unity, and that of supercritical flow, for which F > 1, are considered. For transcritical flow, a similarity theory is developed for small obstacle height and, for non-dispersive flow, the problem is shown to be isomorphic to that of the transonic flow of a compressible gas over a thin aerofoil. The non-dimensional drag exerted by the obstacle on the flow takes the form D(Γ) M5/3, where Γ = (F-1)M−2/3 is a transcritical similarity parameter and D is a function which depends on the shape of the ‘equivalent aerofoil’ specific to the obstacle. The theory is verified numerically by comparing results from a shock-capturing shallow-water model with corresponding solutions of the transonic small-disturbance equation, and is found to be generally accurate for M≲0.4 and |Γ| ≲ 1. In weakly dispersive flow the equivalent aerofoil becomes the boundary condition for the Kadomtsev–Petviashvili equation and (multiple) solitary waves replace hydraulic jumps in the resulting flow patterns.For Γ ≳ 1.5 the transcritical similarity theory is found to be inaccurate and, for small M, flow patterns are well described by a supercritical theory, in which the flow is determined by the linear solution near the obstacle. In this regime the drag is shown to be $c_d M^2/(F\sqrt{F^2-1})$, where cd is a constant dependent on the obstacle shape. Away from the obstacle, in non-dispersive flow the far-field behaviour is known to be described by the N-wave theory of Whitham and in dispersive flow by the Korteweg–de Vries equation. In the latter case the number of emergent solitary waves in the wake is shown to be a function of ${\cal A}= 3M/(2\delta^2 \sqrt{F^2-1})$, where δ is the ratio of the undisturbed layer depth to the radial scale of the obstacle.