Si una foto que pesa 3mb pasa a pesar 300kb a perdido calidad SI o SI, la cuestión es que pierda la mínima posible.
Como te han dicho, si quieres mostrar una imagen de 100x100px (por ejemplo) sube esa imagen a ese tamaño exacto, porque aunque le digas al navegador que te muestre la imagen de 100x100, si la imagen es mayor (200x200 por ejemplo) te estará cargando una imagen de 200x200.
Si tienes acceso a photoshop, tiene una utilidad concreta para esto, que va realmente muy bien.