In Magento (with the responsive themes and ajax) the price is displayed for the product as soon as the options are chosen. Here is one I use for one of my photo sites:
http://sprintseries.dansteeples.co.uk/2017-order-form.html
That one was done with a custom form that just adds/removes prices and alters the SKU for when I need to send out photos, quick and easy 10min job to add. Alternatively I could have added an attribute to each set of photos and had a dropdown, so when the customer uses the dropdown it selects the specific product but as I'm looking at 400 products creating nearly 5,000 combinations it would have been a bit more complicated to build.
In Magento the easiest way to set this up would be to add the attributes "colour" and "size" to the products, create a configurable product that uses those attributes, then select all the products to be included, and it's done. It will change the product image and price according to what options you select. The biggest challenge with most shopping cart systems is making sure your payment gateway can be integrated smoothly.