dnd 5e – Is Zone of Truth not always easily defeated?

A creature is free not to answer at all

A creature in the Zone of Truth

can’t speak a deliberate lie while in the radius

The spell description says nothing about answering questions. Therefore, Zone of Truth does not force anyone to answer questions at all.

Moreover, the spell description explicitly says that a creature which is aware of the effect can (and will) “be evasive” in its answers:

An affected creature is aware of the spell and can thus avoid answering questions to which it would normally respond with a lie. Such a creature can be evasive in its answers as long as it remains within the boundaries of the truth.

So, if a creature is asked “Do you like red and blue?” it can answer “I like red”, or it can say “I like cooking”, or “I don’t want to answer” — all these answers are permitted providing they are true.

However, when you say “I did not” having different question in mind (like, talking about chickens when being asked about the king’s death) this would be a deliberate lie, hence forbidden.

As with other things in 5e, all the corner cases are up to the DM. I suggest not to play “Gotcha!” with players and avoid situations when an obvious answer within the Zone of Truth is actually a well-hidden lie, because this leads to absurd and frustrating situations very fast (like “I didn’t say ‘no’, I just say the letter ‘n’ and then ‘o’, so technically that wasn’t a lie”). I suggest using a simple rule instead — Zone of Truth forbids speaking any words which the speaker itself would identify as a lie.

If you want answers, Zone of Truth is probably a bad choice

Zone of Truth is a 2nd level spell, it isn’t meant to be an ultimate solution. There are another low-level magic means like Suggestions or Detect Thoughts, but they all aren’t so great. If you want an unwilling creature to answer all of your questions completely and honestly to the best of its ability, you provably need something stronger like Dominate Person.