Re: Would this work?
>> Could everything on my internal network then stay the same?
Basically, yes.
There's a lot of FUD about, and a lot of the criticisms derive from the workarounds people have to do now to get around lack of ISP support. Eg, my ISP doesn't do IPv6 yet (but they've had a trial and are working towards it) - in the meantime I'm using a tunnel service from Hurricane Electric.
This does mean I have a few extra config lines in my router (a virtual Debian GNU/Linux box), but **ALL** the complexity is handled in the router.
From an end user POV, what should happen is : User signs up with ISP, ISP sends out pre-configured* router, user plugs it in, user equipment gets both IPv4 (as they do now) and IPv6 (which is new) addresses from the router.
So at present, user just plug in and their equipment gets an IPv4 address - the user doesn't need to do anything (other than connect to the wireless for wireless devices). When ISPs are IPv6 enabled, "nothing happens" to the user experience - their equipment will just auto-configure both IPv4 and IPv6.
What does change is that for IPv6 connections, there's no NAT - so that means a whole shedload of complexity disappears - complexity which many users don't see because clever programmers spent lots of effort working round the problems when they could have been building better <whatever>. I can assure you that there has been a **LOT** of (IMO) wasted developer time expended on working round the breakage that is inherent in NAT. NAT is only "not a problem: because of all this effort into working round it.
On the security front, a basic stateful firewall will give you all the security that NAT ever gave (and more). On the privacy side, a device is quite free** to change it's IPv6 address within the subnet - and it's got millions of addresses to go at. All these will be tied back to your assigned network range - so consider IPv6 range == IPv4 address in terms of privacy. Eg, if you have a fixed IPv4 address now, everything done by your devices is linkable to your connection by the single external address - for a fixed IPv6 assignment, you'll have millions of address (actually 2^64 minimum), but they'll all be linked to your connection. If your assignments are dynamic, then they will change periodically - and the privacy issues are just the same (if <someone> wants to identify you, they can go to court, show proper reason, and get an order for your ISP to say who that address (IPv4) or range (IPv6) was assigned to at any point in time).
* Actually, I think they use a remote configuration protocol so it gets configured when plugged in, but I'd not looked at that side of things.
** I forget what the term is called, but some devices will default to using a fixed address based on the MAC address. Some default to using a dynamic address that it changes from time to time.
Of course, technical users can mess around with fixed addresses for servers, opening ports in the firewall etc. An average user doesn't need to.
Another facet of all this is that these days it's getting less and less necessary to use IP addresses. So much now uses multicast DNS (aka mDNS, Bonjour, ZeroConf, …) so that one device can advertise on it's network all the services it offers - and other devices can automatically detect them and present them to the user. So, for example, your new printer should just plug in, systems can "just find it", and you may even see an entry for it in your browser's bar (for web management) - you you don't need to know it's IPv4 or IPv6 address (both of which will be dynamic) in order to configure and use it.