본래 백제의 굴직현(屈直縣)이었는데, 757년(경덕왕 16) 기량(祁梁)으로 고쳐 탕정군(湯井郡: 지금의 아산시)의 영현으로 삼았다. 940년(태조 23) 신창으로 고치고 1018년(현종 9) 천안부(天安府)에 이속시켰다.
1391년(공양왕 3) 현의 서쪽 장포(獐浦)에 성을 쌓고서 당성(溏城)이라 이름하고, 부근 주현(州縣)의 조세를 이곳에서 수납하여 해상으로 서울에 수송하였다. 이에 따라 이곳에 만호 겸 감무를 두었던 것을 1392년(태조 1) 만호는 없애고, 1414년(태종 14) 온수(溫水: 지금의 아산)와 병합하여 온창(溫昌)이라 하였다가, 1416년 다시 나누어 신창으로 하고 현감을 두었다.
1895년(고종 32) 군이 되었다가, 1914년 행정구역 개편 때 아산군 학성면이 되었으며, 1917년 신창면이 되었다. 이는 1917년 장항선의 개통으로 오목리가 발전하면서 면소재지가 되자 옛 명칭을 따 새롭게 번창하자는 뜻으로 이 지명을 쓴 것이다.
조선시대에는 이곳이 아산만으로 흘러드는 무근성천(無根城川)과 선화천(宣化川)이 합치는 곳으로 해운이 번창하였다. 천안(天安, 頓義倉)·덕산(德山, 非方串의 外倉)·면천(沔川, 南倉) 등의 월경처(越境處)가 이곳에 집중하여 해마다 많은 세곡선이 이곳에서 출발하여 경강(京江)으로 향하였다.
삽교천(揷橋川)과 곡교천(曲橋川)이 만드는 해안 평야지역에 있어서 당시에는 예산·온양·아산·면천 등을 연결하는 육상교통이 발달하였다. 유적으로는 신창의 진산(鎭山)이었던 학성산(鶴城山, 181m)에 산성이 남아 있다.