Suspected rebels using guns and grenades sneaked into an army base in Indian-controlled Kashmir early on Sunday and killed at least 17 soldiers.
Four rebels were killed as the soldiers returned gunfire to the attackers in the surprise assault before dawn on the army camp in Uri town close to the highly-militarised line of control dividing the disputed Himalayan region between India and Pakistan.
Through the initial hours of the battle, loud explosions were heard and several barracks on the base caught fire.
Military helicopters hovered over the base afterwards as the army conducted what they described as "mopping-up" operations.
Several wounded soldiers have been airlifted to the army's main hospital in Srinagar, the region's main city. It was not immediately clear if the four dead rebels were the only attackers.
Uri, west of Srinagar, houses the Indian army's brigade headquarters in the region along the de facto border.
Kashmir has seen its largest anti-India protests in recent years since the July 8 killing of a popular rebel commander by Indian troops. A sweeping military crackdown and near-constant curfew have followed.
Protesters throwing rocks have clashed with troops firing live ammunition and shotgun pellets, and more than 80 people have been killed.
The Muslim-majority region is divided between India and Pakistan but most people in the Indian portion favour independence or a merger with Pakistan.