If you resize your images to either the max-size at which you plan to display them (or slightly larger) before you upload them to your website, you will get better image quality than you will if you rely solely on the image-resizing functionality of your content management system (and definitely better image quality than if your content management system doesn’t handle image-resizing at all).
Further, if you take the time to reduce your images before you upload them, the uploading process will be faster—especially if you have a lot of images. 1000-1500px high is about as large as you will need any images to be and you will often be fine with images that are ≤800px high for slideshows and other web content.
Photoshop is the best image-editor for quality resizing (and you may like to read How to Resize Images for Your Website in Photoshop about taking careful steps in the process). Alternatively, your computer’s image-editor may work for you or you could try the free software Canva (which does a lot more than resizing and is popular with Instagram users).
The most important thing is to only use images that are as large as you want or slightly larger. Don’t ever upload an image at a smaller size than that at which you want to display it.
To decide what size your images need to be displayed at, you need to think about:
For more on this subject, please read this article: Best Image Sizes for Your Website or Blog.