We develop a theory of crossed products by actions of Hecke pairs (G, Gamma), motivated by applications in non-abelian C*-duality. Our approach gives back the usual crossed product construction whenever G/Gamma is a group and retains many of the aspects of crossed products by groups. We start by laying the *-algebraic foundations of these crossed products by Hecke pairs and exploring their representation theory, and then proceed to study their different C*-completions. We establish that our construction coincides with that of Laca, Larsen and Neshveyev (2007) whenever they are both definable and, as an application of our theory, we prove a Stone-von Neumann theorem for Hecke pairs which encompasses the work of an Huef, Kaliszewski and Raeburn (2008).