We analyse a non-conforming finite-element method to approximate advection-diffusion-reaction equations. The method is stabilized by penalizing the jumps of the solution and those of its advective derivative across mesh interfaces. The a priori error analysis leads to (quasi-)optimal estimates in the mesh size (sub-optimal by order 1 2 in the L 2 -norm and optimal in the broken graph norm for quasi-uniform meshes) keeping the Péclet number fixed. Then, we investigate a residual a posteriori error estimator for the method. The estimator is semi-robust in the sense that it yields lower and upper bounds of the error which differ by a factor equal at most to the square root of the Péclet number. Finally, to illustrate the theory we present numerical results including adaptively generated meshes.