How do I start building a new component for Blazor?

Blazor considers each .razor file as a new component. The component class is usually written in the form of a Razor markup page. So, you can create a new component and reuse it across the application. In the following example, a Blazor component is created in the Components folder and used in the Index.razor page.  [BlazorComponent.razor] [Index.razor] View Sample in GitHub 

How can I prevent uploading a large file to the server?

Blazor has a built-in InputFile component from .NET 5.0 that can be used to upload files to the server. You can check the file size in the OnChange event and upload or prevent uploading the files to the server. [Index.razor] Note: Syncfusion offers a feature-rich, easy-to-use File Upload component for Blazor. You can check it out here.

Can I host blazor server side using signalr service without using Azure?

Yes, you can host and deploy the blazor server-side application without using Azure but by using AWS or Firebase. Here you can find the steps for hosting the Blazor application using AWS.  For more details reference the links Host the application to AWS and Host the application to Firebase.