We present an elementary unified and self-contained proof of sharp Sobolev embedding theorems. We introduce a new function space and use it to improve the limiting Sobolev embedding theorem due to Brézis and Wainger.