The motivation behind this is to support IPv6 hosts as DialUDP currently gives preference to IPv4 (might be fixed in 1.14): https://github.com/golang/go/issues/28666
Dial must be a sensible choice I believe as it takes off the overhead of DNS lookup and also prioritization of IPv4 and IPv6 which is automatically performed (v6 > v4).