This is driving me nuts and I think I have figured it out. At least I can get it work, but maybe I do not understand all the implications.
In the file /etc/wireguard/wg0.conf there is this line
PostUp=ip -4 route add 192.168.100.0/24 via 192.168.100.1 dev table 200
The same line that throws the error in wg-quick.log
[#] ip -4 route add 192.168.100.0/24 via 192.168.100.1 dev table 200
Error: either "to" is duplicate, or "200" is a garbage.
I refreched some knowledge about routing in Linux and I don't think the "dev " (notice the extra space) should be there.
If I edit /etc/wireguard/wg0.conf and remove "dev " the tunnel can stay started and there is no error in wg-quick.log
PostUp=ip -4 route add 192.168.100.0/24 via 192.168.100.1 table 200
This solution works and are stable for starting/stopping the tunnel. If I however add a peer or update a peer, the config is overwritten with the "dev " in the line and it needs to be edited again.
I have only tested this for "remote access to server" and have not changed anything from default values.
Why do I have this problem? I saw the upgrade note that you should refresh Wireguard tunnels to get it to work. So there is an issue with Wireguard, but somehow my system/setup is different.
I'll guess this is a workarond for now and maybe someone else can give a +1 if they had the same?