Lors des élections du , remportées par la SDS, il est élu député à l'Assemblée nationale. Le Premier ministre, Filip Dimitrov, le reconduit dans ses fonctions ministérielles le 8 novembre suivant.
Chef de l'opposition
Il n'est cependant pas maintenu lorsque, le , Liouben Berov prend la tête du gouvernement.
Il conserve son mandat de député lors des élections législatives anticipées du , qui voient la victoire de la Coalition pour la Bulgarie (KZB), dominée par le Parti socialiste bulgare (PSB). À la suite de cet échec, Dimitrov renonce à présider l'Union des forces démocratiques et Kostov est alors choisi pour lui succéder. Il devient donc le chef de l'opposition au socialiste Jan Videnov.
Le 21 mai suivant, Ivan Kostov est nommé Premier ministre et prend la tête d'un gouvernement formé de la SDS, du DP et de la BZNS. À compter du , il est également ministre de l'Administration publique.
Il annonce, le 27 juillet à l'Assemblée, que la SK votera l'investiture au gouvernement de Boïko Borissov, dont il affirme partager une grande partie des objectifs[2]. Ce soutien devient plus critique au début de l'année 2011[3]. Au mois de mai suivant, la Coalition s'abstient ainsi sur le vote de la motion de censure des socialistes[4].