Everyone knew Ulfric could use the voice and could probably kill the high king if he wanted, doesn't mean he had to
In order for Skyrim to be free of the Thalmor, it has to be free to ignore the WGC. That means it has to secede from the Empire, as Hammerfell did. It's impossible to do that by peaceful means (mutual agreement) when the ruler of Skyrim isn't on board with the idea, since he/she is the only person with the authority to treat with the Empire on behalf of Skyrim as a whole. Torygg wasn't doing that, nor was he going to lead a rebellion and try to win independence by force of arms. So, yes, in order for the secessionists to meet their goal of being free from the terms of the WGC and thus free to deal with the Thalmor on their own terms, Torygg had to go and the only way for that to happen was to challenge his right to rule.
And no, Ulfric didn't have to kill him, Torygg could've simply refused the challenge to fight which most would see as an admission that he is not fit to occupy the throne. He abdicates his position, a moot is called, someone else gets to run the show.
But Torygg did not refuse the challenge, he chose to fight, and once he made that choice, then yes - Ulfric either had to kill him or be killed himself.