It's UDP, so you can't know if the message reached it's destination.
Actually, you can, but not immediately. When you send a packet to a non-existent IP/port, the network is likely to send back an ICMP packet explaining that the host/port was unreachable. If you
Connect() a UDP socket to a peer, and the socket internally receives such an ICMP packet after a send to that peer, then
subsequent sends on that same peer will fail with an error that you can catch, as long as the socket remains "connected" to that peer.
All I want to know if it is possible to catch the IdUDPClient.SendBuffer error with try, except finally.
Of course it is possible. It is just a normal 'raise'd exception, like any other. Why do you think it is not possible to catch it?