The DNS Server in Windows Server 2012 will resolve Internet names via root hints automatically. As long as the server has access to the Internet DNS system it will act as caching nameserver for your LAN.
Adding "Forward Lookup Zones" for the domains you want the server to be authoritative for (like "mydomain.com") will allow it to resolve names to records you specify.
Be aware that creating a forward lookup zone named "mydomain.com" will cause the server to resolve all ".mydomain.com" names itself. If you have existing names (or other records) in "mydomain.com" hosted by an Internet DNS server you'll need to either replicate them in the forward lookup zone you create or, alternatively, create forward lookup zones that are subdomains of "mydomain.com" to allow the server to continue resolving "mydomain.com" names from the Internet.
In your example I would typically not create a "mydomain.com" forward lookup zone. Instead, I'd create a forward lookup zone named "internal1.mydomain.com" with a blank "A" record referring to the IP address "10.0.0.1". That would allow any other "mydomain.com" names currently defined in an Internet DNS server to continue resolving, while causing "internal1.mydomain.com" to resolve on my LAN to 10.0.0.1.
Obviously, you will need to specify your Windows Server 2012 DNS server as the DNS server for clients on your LAN.