IIS7 has a number of 500 errors. Usually you will see a specific number. I would guess you are getting a 500.13, which indicates that the server is too busy. This could be from a number of different causes, but the general issue is load. Your server cannot support 100 people at once with the given configuration. You might be able to improve this number just by changing your site. For example, if each session takes 1MB of bandwidth to open your site and read your initial page, cutting this down should allow more people at once to view your site.
If tuning your site isn't the obvious problem, you should also look at your server itself. Watch the vital stats using perf mon during operation. See what major systems are being taxed. It might be the processor, the RAM, the disk IO, the network connection, the Internet connection, etc. From there you should be able to figure out what you need to do to fix the problem.
Here is a list of status codes, in case you aren't getting the 500.13 code:
http://support.microsoft.com/kb/943891[
^]