Recently, the increasing interest in underwater exploration motivates the development of aquatic unmanned vehicles. To execute hazardous tasks in an unknown or even hostile environment, researchers have directed on developing biomimetic robots inspired by the extraordinary maneuverability, cruising speed, and propulsion efficiency of fish. Nevertheless, the performance of current prototypes still has gaps compared with that of real fishes. In this review, recent approaches in structure designs, actuators, and sensors are presented. In addition, the theoretical methods for modeling the robotic fishes are consolidated, and the control strategies are offered. Finally, the current challenges are summarized, and possible future directions are deeply discussed. It is expected that the emergence of new engineering and biological technologies will enhance the field of robotic fish for further advancement.