Родился 3 февраля 1914 года в селе Докторовка-Кузнецовка ныне Дмитриевского районаКурской области в семье крестьянина. По национальности русский. Получил неполное среднее образование. В 1930-х годах работал в Крупецком сельсовете, в Дмитриевской и Льговской конторах «Заготскот». Член ВКП(б).
В Красной Армии с 1936 года. В 1942 году получил офицерское звание, окончив курсы младших лейтенантов. В действующей армии с октября 1942 года.
В феврале 1943 года командир 4-й батареи 6-го артполка (74-я стрелковая дивизия, 13-я армия, Центральный фронт) младший лейтенант Сонин под сильным пулемётным огнём противника, не позволявшим продвигаться советской пехоте, выдвинулся за боевые порядки пехоты и меткими выстрелами уничтожил огневые точки противника. В бою за деревню Костюрино 23 февраля 1943 года постоянно находился в боевых порядках пехоты и вёл прицельный огонь по засевшим в домах гитлеровцам, в результате чего подчинённая ему батарея уничтожила до 200 солдат и офицеров противника, 4 станковых пулемёта, одну миномётную батарею, один автомобиль, наблюдательный пункт и 4 повозки. За вышеописанные боевые заслуги 8 марта 1943 года награждён орденом Красной Звезды.
В период сражения на Курской дуге командир 4-й батареи 6-го артполка (74-я стрелковая дивизия, 13-я армия, Центральный фронт), лейтенант. Получив 11 июля 1943 года задачу отразить атаку противника, прорвавшего боевые порядки стрелковых подразделений у деревни Протасово, несмотря на осколочное ранение, умело руководил огнём орудий, отсёк вражеских автоматчиков от танков, уничтожил 6 танков (в том числе 2 «Тигра») и большое количество пехоты, благодаря чему батарея удержала занимаемые позиции. В этом бою погиб в результате прямого попадания снаряда в станину орудия[2]. Батарея удержала занимаемые позиции, не пропустив врага на своём участке к городу Малоархангельску[3].
Звание Героя Советского Союза присвоено 8 сентября 1943 года посмертно.