본관은 전주(全州). 자는 경수(景受). 아버지는 이연손(李連孫)이다.
어려서부터 무예에 뛰어나 17세에 사복시내승(司僕寺內乘)이 되고, 그 뒤 무과에 급제해 여러 벼슬을 거쳤다. 특히, 북방 오랑캐가 침입했을 때 경흥부사로 임명되어 적을 격퇴시키는 데 큰 공을 세웠다.
그 뒤 무인으로서의 자질을 인정받아, 온성부사 등 국방상의 요직을 역임하였다. 1591년(선조 24) 순천부사를 거쳐 임진왜란 때에는 전라우수사가 되어, 전라좌수사 이순신(李舜臣), 경상우수사 원균(元均) 등과 합세해 당항포(唐項浦) · 한산도(閑山島) · 안골포(安骨浦) · 부산포(釜山浦) 등지에서 왜적을 크게 격파하였다.
1596년에는 휘하의 전선(戰船)을 이끌고 전라 좌 · 우도 사이를 내왕하면서 진도와 제주도의 전투 준비를 돕는 한편, 한산도의 삼도수군통제사 이순신의 본영을 응원하는 등 기동타격군의 구실을 수행하였다. 이순신이 조정의 명령을 따르지 않았다는 죄목으로 잡혀가 조사를 받자, 이항복(李恒福) · 김명원(金命元) 등 조정대신들에게 서신을 보내 무죄를 적극 변론하였다.
1597년 정유재란 때 통제사 원균 휘하에서 조정의 무리한 진격명령으로 부산의 왜적을 공격하다가 칠천량해전(漆川梁海戰)에서 패해 원균 · 충청수사 최호(崔湖) 등과 함께 전사하였다.
1592년 6월 5일 당항포해전 이래 칠천량해전에서 전사할 때까지의 공적은 이순신 · 원균 등에 못지 않았으나, 1592년 5월의 옥포(玉浦) · 사천(泗川) · 당포(唐浦) 등지의 초기 해전에 참여하지 못했던 관계로, 임진왜란 후 공신책정(功臣策定) 때 선무공신(宣武功臣) 2등으로 되어 병조판서에 추증되고 완흥군(完興君)으로 봉해졌다. 1600년 여수의 충민사(忠愍祠)에 이순신과 함께 제향되었다. 시호는 의민(毅愍)이다.