Does Commerce support a one-page checkout experience?
A true one-page checkout is not really possible, as Commerce requires information from the previous step to show the next. For example it's not possible to determine available shipping methods until the customer provided their address, and it's not possible to show payment methods before the order total is confirmed based on the chosen shipping method. While some use-cases may not require this, Commerce aims to support a wide range of use cases and this is a necessary restriction for that.
Most "one-page checkout" solutions use JavaScript to move from one step to the next without refreshing the page.
As the cart and checkout in Commerce automatically respond with JSON to AJAX requests, that is fairly straightforward to add and mostly depends on how you'd like things to look. An example one-page checkout theme can be found on the forum.
The Red Starter Pack also includes an AJAX cart and checkout.