It is very possible.
There are many ways to attack this.
You can use the managed switch VLAN capabilities to create networks that cannot speak to each other.
You can use the pfsense Firewall Rules TAB to accomplish the same thing.
Pfsense can be used as a DHCP for the internal network it can also act as a DNS
With pfsense alone you can make the firewall rules where no device can touch the internal network and vice versa. You can also make a rule in pfsense to not access the adsl router for the exception of one machine or subnet(usually an internal LAN) etc,..
With pfsense you can make VLAN with Tags on them and you can then use the managed switch to distribute the tags to the correct networks.
All possible with your setup and more.