You must resize all your image, and use some maths for positions.
I don't know XNA, but I will give you a code that you will adapt with this lib.
1. You will do everything based on 1 screen resolution, and scale your images, relative to this.
float Reference_Screen_X = 1280;
float Reference_Screen_Y = 720;
2. You will get your current screen resolution
float Screen_X = GetScreenWidth(); //your function to get the screen width
float Screen_Y = GetScreenHeight();
3. You will resize all your image this way
float size_x = image.getwidth() * ( Screen_X / Reference_Screen_X );
float size_y = image.getheight() * ( Screen_Y / Reference_Screen_Y );
OR with scale methods
float scale_x = 1 * ( Screen_X / Reference_Screen_X );
float scale_y = 1 * ( Screen_Y / Reference_Screen_Y );
4. You have to keep in mind that every value you will set, will be in a Reference_Screen coordinate.
For exemple if you want go to the middle of the screen :
image.x = 640 * ( Screen_X / Reference_Screen_X );
You should use global variables like :
float refToScreen_x = ( Screen_X / Reference_Screen_X );
float refToScreen_y = ( Screen_Y / Reference_Screen_Y );
Then you just multiply them to the number you want :
x = 500 * refToScreen_x;
I hope this will help you.