|I do not want to give 2 cpu to each user. Is there a better way ?|
The requirement is that same PC should not access both the networks at the same time. It should not share the RAM, hard disk space etc.
Based on your requirements, there is no way to accomplish your task without giving users who require internet access another, separate, device to use to connect to the internet.
If you buy your internet users each a 2 port KVM switch, they could easily switch from one PC to another and would only require a single K/B, mouse and monitor for both PC's. If you use mini-atx form factor PC's, they won't take up much room. No more than a standard atx form factor in a standard size case.
It matters not how straight the gate,
How charged with punishments the scroll,
I am the master of my fate;
I am the captain of my soul.