Yes. Typically you can use one firewall to do this.
Example would be port#1 WAN, Port#2 LAN Port#3 DMZ. Normally used you separate subnets between LAN and DMZ two make it two completely different networks. Than depending on the firewall. You may need to make rules to block traffic between LAN and DMZ. However, on most firewalls it would be separated by default unless you create rules to allow cross traffic.
Then plug LAN and DMZ into their own switch and be on your way!
On my home network I one way bridge some specific ports like 3389 to allow me to remote into my servers from my LAN network. However it blocks all other traffic etc... However, that's a preference thing and not required.
P.S.
And to answer your other question. No, a...