Current draw is determined by the heater power you need. If you can reduce the heater watts, do that. I'll assume that you have already sized the heater.
Both triacs and IGBTs have relatively high losses, and you can expect roughly 1W/A of losses for a triac. The IGBT may have a bit more, and the required bridge will have still more.
Your best bet is to use an adequately rated part (for example a 40A triac for 25A use) and put a large enough heat sink on the part to keep the temperature rise above the highest anticipated ambient temperature reasonable.
For example, if losses are 25W and if you need to allow for 50°C ambient and you think 100°C case temperature is acceptable you will need a heatsink that has a thermal impedance of less than 2°C/W. With natural convection that is a fairly large (and fairly expensive) heatsink. The below photo is one that is 5" x 3" x 1.5".
A smaller heatsink will be possible if you use forced convection (a fan).
Get the maximum power dissipation for a given current from the datasheet as with the typical 40A triac linked:
For this one, as I said above, the dissipation at 25A RMS is maximum 25W.
If your application can deal with a bit of variation, it may be better to use a relay or contactor and switch the heater with a on/off cycle of appropriate times. A mechanical contactor will have little in the way of losses but you have to be concerned about lifetime, as the contact will wear out after perhaps 100,000 operations. It's possible to use a triac to do the switching and short it with a relay (hybrid switching) with appropriate timing.