errrr, don't know how to do all of that on *BSD...
on client1 (subnet .20/24) I'd set up routes by adding
route 192.168.10.0 255.255.255.0
route 192.168.30.0 255.255.255.0
to the config file; similarly for client2
the thing I **don't** know how to do is how to set up IP forwarding and/or pf/iptables rules on freebsd - try googling using 'ip forwarding freebsd'