It almost always makes sense to use TONE. On Yaesu radios, TONE will send a CTCSS tone when you push PTT, which almost all repeaters sense. If the tone is not there, your signal doesn't get repeated. On some other radios, this is equivalent to setting TX TONE.
TSQL does two things: it sends a CTCSS tone when you push PTT, and it sets a CTCSS tone squelch value on your radio. This is equivalent to setting TX TONE and RX TONE on some other radios. It requires that the repeater send a CTCSS tone back to you when it transmits, otherwise your radio will keep the signal squelched.
Some repeaters don't transmit a tone back. For those repeaters, you'd never hear them if you set TSQL.
When would you use TSQL? When you don't want to hear something.
Usually it's when two repeaters are on the same frequency. Often repeaters that are "far enough" apart get coordinated with identical frequency pairs. When the atmosphere is just right, repeater signals travel further, and the repeaters can interfere with each other. If both repeaters send different CTCSS tones when they repeat, you can ignore one repeater by setting TSQL (or RX TONE) so you don't hear the distant repeater and only hear traffic from the nearby repeater.
You might also use TSQL with APRS. Most of the time there's no tone on APRS signals - and you don't want to hear the digital bursts anyway. However, sometimes people will key up on the APRS frequency with voice traffic - "I'm listening on APRS." You can set TSQL or RX TONE on the APRS frequency so you don't hear APRS traffic, but do hear when someone keys up with a transmit tone set. This is called Voice Alert.
In general, if you want to hear everything, use TONE only (or TX TONE). If you want to block transmissions that don't have a particular CTCSS tone, use TSQL (or RX TONE along with TX TONE) if transmit CTCSS is required.
No matter what, remember that tone squelch just blocks what you hear. You still need to be aware that the frequency may be active (the green light on most radios that shows the frequency is busy) so you don't interfere with someone else.