The correct option is B so that
A subordinate clause (they could win the race) is a clause that depends on the main clause (They trained daily) for its full meaning. When they are combined together as a sentence, a subordinating conjunction is used. The given subordinate clause is the purpose behind which 'they' had to train daily, and 'if' is not used for purpose-related sentences, but for conditional sentences that depict something that may or may not take place, hence option D is incorrect. 'So that' is the conjunction used for purpose-related sentences, and it completes the given sentence, hence option A is the correct option. 'Though' is a conjunction used for sentences that are contrast in meaning, example, "They trained daily though they did not win the race". Since the given sentence is not contrast, option B is incorrect. 'But' is a coordinating conjunction used for independent sentences that are joined together. As both the sentences are not independent here, the subordinate clause is incomplete without the main clause, option C is hence, incorrect.