This thesis addresses the optimization and design of turbine and propeller blades through the use of a lifting line model. An existing turbine optimization methodology has been modified to include viscous terms, non-linear terms, and a hub model. The method is also adapted to the optimization of propellers. Two types of trailing wake geometries are considered: one based on helical wakes which are aligned at the blade (using the so-called "moderately loaded propeller'' assumption), and a second one based on a full wake alignment model in order to represent more accurately the wake geometry and its effect on the efficiency of the rotor. A comparison of the efficiencies and the loading distributions obtained through the present methods is presented, as well as convergence and numerical accuracy studies, and comparisons with existing analytical results. In the case of turbines, various types of constraints are imposed in the optimization method in order to avoid abrupt changes in the designed blade shape. The effect of the constraints on the efficiency of the turbines is studied. Once the optimum loading has been determined, the blade geometry is generated for given chord, thickness and camber distributions. Finally, a low-order potential-based boundary element method and a vortex-lattice method are used to verify the efficiency of the designed turbines.