I would look into Blazor WebAssembly instead.
https://learn.microsoft.com/en-us/aspnet/core/blazor/hosting-models?view=aspnetcore-3.1#blazor-webassembly
If you would still like to continue with Blazor Server you can read more below.
https://learn.microsoft.com/en-us/aspnet/core/blazor/hosting-models?view=aspnetcore-3.1#blazor-server
Each circuit uses approximately 250 KB of memory for a minimal Hello
World-style app. The size of a circuit depends on the app's code and
the state maintenance requirements associated with each component. We
recommend that you measure resource demands during development for
your app and infrastructure, but the following baseline can be a
starting point in planning your deployment target: If you expect your
app to support 5,000 concurrent users, consider budgeting at least 1.3
GB of server memory to the app (or ~273 KB per user).
https://learn.microsoft.com/en-us/aspnet/core/host-and-deploy/blazor/server?view=aspnetcore-3.1
Here is a good comparison and also a test done on a Standard D3 v2 instance on Azure (4vCPU & 14GB memory)
with over 20,000 concurrent active users
Note specifically:
The major findings which came out of these experiments were that
memory and latency are the main bottlenecks of Blazor Server
applications. If latency got above 200ms then performance took a hit
and scale was limited by the available memory on the box.
https://stackoverflow.blog/2020/02/26/whats-behind-the-hype-about-blazor/