No — you do not need an Xbox Live account to play all games.
Set your console as Home Xbox (Settings → General → Personalization → My Home Xbox). Then any profile on that console plays your digital games offline and uses your Gold/Game Pass benefits.
| Scenario | Account Needed? | Subscription Needed? |
|---|---|---|
| Offline campaign / local co-op | No | No |
| F2P online (Fortnite, Apex) | Yes (Free MSA) | No |
| Paid game online (CoD, FIFA) | Yes (Free MSA) | Yes (Core/Gold/Ultimate) |
| Game Pass games | Yes | Yes (Core/Ultimate) |