동경 126°45′, 북위 34°41′에 위치하며, 목포에서 남동쪽으로 26.2㎞ 지점에 있다. 면적은 24.85㎢이고, 해안선 길이는 35.2㎞이다. 마진도(馬津島), 백야도(白也島), 막금도(莫今島) 등의 부속도서가 있다.
조선시대에는 나주목에 속하였다가 1914년에 무안군으로 편입되었다. 1969년에 무안군에서 신안군이 분군되면서 신안군 장산면이 되었다. 지명은 산줄기가 오음산에서 아미산을 거쳐 대성산까지 길게 연결되어 있어 장산(長山)이라 부르게 되었다고 한다.
섬의 최고봉은 북쪽에 있는 오음산(五音山, 208m)이다. 남쪽에 대성산(大城山, 180m)이 있으며, 동쪽으로 평야가 있다. 원래 굴곡이 심한 섬이었으나, 만 입구에 방조제를 쌓아 농경지와 염전을 조성하였다. 해안에는 큰 만입부가 있으나 바다가 얕고 간석지로 둘러싸여 있어 좋은 항만이 드물다.
식생은 동백나무·풍란 등 난대성 식물이 자라고 있다. 1월 평균기온은 2.0℃, 8월 평균기온은 25.6℃, 연강수량은 886㎜이다.
2009년 기준으로 인구는 1,723명(남 878명, 여 845명)이고, 세대수는 915세대이다. 면사무소가 있는 섬 중앙의 도창리가 중심지를 형성한다. 토지이용 현황은 논 35.55㎢, 밭 5.71㎢, 임야 10.50㎢이다. 간척사업의 진행으로 농경지 면적이 꾸준히 증가하고 있다. 주민은 대부분 농업에 종사한다.
주요 농산물로는 쌀·보리·고구마 등이 있고, 마늘·고추·채소도 소량 생산된다. 어업이 차지하는 비중은 크지 않으며, 천일제염업이 발달해 있다. 광산물로 고령토와 납석이 생산되고 있다. 유적으로는 대리와 도창리에 고인돌이 있고, 임진왜란 때 축성한 것으로 보이는 대성산성이 있다. 대성산 중턱에 과거의 장산목장 터가 남아 있다.
예로부터 불려오던 「장산도 들노래」는 섬사람의 삶에 대한 고달픔과 노동의 피로를 덜고 작업의 능률을 올리기 위한 것으로, 도서적인 특이한 가락으로 이루어져 내려오고 있다. 교통은 목포에서 정기여객선이 운항된다. 교육기관으로는 장산초등학교와 장산중학교가 있다.