1. the browser will choose the most appropriate image size based on those prompts. If you want the prompt to be explicit then you can do:
function db_modify_srcset_sizes($sizes, $size) {
$sizes = '(max-width: 420px) 300px, (min-width: 421px) and (max-width: 768px) 768px, (min-width: 769px) 1024px, 100vw';
return $sizes;
}
add_filter('wp_calculate_image_sizes', 'db_modify_srcset_sizes', 10 , 2);
2. anything over and above those sizes that, and the browser will load the full size image. So theres no need to set any higher sizes. See the last part of the sizes ie. 100vw that dictates to the browser to use the largest size to fit the viewport. Which with those options will be your full size image.
Yes, there are a lot of factors here.
From the original image size, the width and height attributes of the image, the src-set attachments WP generates, the sizes attribute and the device screen size and resolution. All of which can be changed if CSS is resizing the image or another image optimizer does something with the code….
3. where is the biggest concern over quality ? On desktop or mobile ?