Vce(sat) can be quite high let’s assume 2 volts.
To start with let’s use 1000 for HFE.
Your load resistance looks like 24v/.5A= 48 ohms (double check with DVM)
“ Since I am planning to drive this 24V solenoid with a 12V supply, the current needed I believe would be doubled. ”
Gain = Ic/Ib = 1000 = 500ma/Ib
Ib = 500mA/1000 = .5mA
I usually will multiply Ib by ‘10 or more’ to guarantee the transistor goes into saturation.
Let’s use 5mA. Rb = (5v - 1.4Vbe) / .005A = 720Ω use 680.
Now with the transistor turned on confirm the Vce(sat) is 2v or less.
At 2v P=2V * .5A = 1 watt. confirm the transistor does not get hot, if so add a heatsink.
However, suggest you use a ‘logic level’ MOSFET such as one from this PDF list.
Thank you. Will try it out and see if a heat sink is needed. Also, I'm planning to test a 12V water pump (R385 diaphragm type) which has an operating current of 0.5-0.7 amps. So, as per your calculations I believe i should use a 330 ohm resistor in place of 680 ohm resistor for 1 amp of current for the motor.
Also, I will try both the solenoid and motor with a logic level N channel mosfet, IRLB8748 or stp90nf03l. Is there a necessity of connecting any resistor while using this mosfet with the arduino nano pins. I will be using snubber diode (IN4007) across motor and solenoid when using MOSFET. But for TIP120, I believe it has internal snubber protection built in.
Another question I had was, what will the max current that the TIP120 be able to provide for a 12V DC motor or 24V solenoid ? It says its rated for 5 amps in the datasheet.