Technically there is almost no difference between port forwarding and DMZ. Both works same way, the only small difference is that DMZ is pretty much like you set ALL ports forward to a host. While using port forward, you become selective which port to forward to a host.
There is minimal difference on security between them.
From what I learn over years, I realize that DMZ has benefit if set VP as a host. It actually increase security because literally it would force all ports to VP unit. What does VP unit has to offer to hackers and virus writers? The answer is nothing. DMZ which in turn, the hackers do not have ability to attack other host like PC. The only concern about DMZ is that *IF* it were accidently assigned to a PC as a host, then that is serious breach of security toward to that PC.
The advantage of using port forwarding is that you specific port to a specific host, while freeing up other ports for other hosts.
DHB