You could put them in a group that has all "Never" group forum permissions for that particular forum you don't want them to see. That will cause that forum to be invisible for this user, but not the others.
Thanks. Though I want them to be able to retain read-only access.
Is there a way to get a group to expire in a certain amount of time? Let's say I ban someone from discussion for 7 days, can I set it so that they will be automatically reverted back to normal after 7 days?