If your server is good in performance and your connection also then the sollution will be the 2nd!

"2. Have a single table and store every users info in that and parse the table each time, again as time goes by that table would be enormous and become slow again."

I have a project that works like these and I have more than 30000 members and the table's size is at about 150mb. It works very fast.

Also, check if the sql queries are fast. for example, at the login sql, you don't have to select all fields from the table, just only username and password.

If you need more help, ask for it.