Either store the questions in the DB per user, or maybe storing a custom DataTable object holding the question ID's in it, then put the data table in the Session or Cache objects. If you are using the Cache object, make sure that in the global.asax.
vb file, you specify "Cache.Remove" in the Session_End method. That way, when the session ends, they can start over. Or you can use the Cache and specify an expiration period too, and do it that way. If you want a predefined expiration period, you can't use the Session object.
What level of retention do you want? User sessions time, 20 minutes, 1 day, 2 days, a month?
Brian Mains