The ruling Congress won three Assembly seats, while the opposition Shiromani Akali Dal (SAD) won one in the Punjab by-polls, the results of which were announced on Thursday.
While the Congress won the Jalalabad, Phagwara and Mukerian seats, the SAD came up trumps in Dakha.
Chief Minister Amarinder Singh hailed his party's victory in three of the four Assembly segments, particularly in SAD president Sukhbir Badal's "self-proclaimed" stronghold of Jalalabad, and described it as a total rejection of the negative agenda of the Akalis.
Congress's Raminder Awla defeated SAD's Raj Singh Dibipura by a margin of 16,633 votes in Jalalabad, officials said.
Jalalabad was considered to be a citadel of the Akalis as they had represented the seat in the Assembly since 2007. The seat fell vacant after the sitting MLA, Sukhbir Singh Badal, was elected to the Lok Sabha from the Ferozepur parliamentary segment in the general election held in April-May.
Congress candidate and former IAS officer Balwinder Singh Dhaliwal defeated Bharatiya Janata Party's (BJP) Rajesh Bagha by a margin of 26,116 votes in Phagwara.