My son is a dual citizen of the UK and USA. His US passport has expired. However, his UK passport is still valid. We are flying from the UK to Mexico via Atlanta. Will he be allowed to transit in Atlanta with an expired US passport?
You really don't want to try this.
The US consulate will tell you nothing other than that it is unlawful to enter or exit the US with an expired US passport. And this is true. However, it's a law with no teeth as there's no defined penalty. Its only real practical effect is that since it is a law, air carriers must follow it, and so they will refuse to board someone flying to the US on an expired US passport (which means you'll have to show your airline the other passport and an ESTA).
However, the US can't deny you entry if you can prove you're a US citizen, and an expired US passport is sufficient for this.
What happens in practice if you show up at the US border with an expired US passport is: You may go to secondary screening. You may be detained for some time while your identity and documents are verified. This might take two minutes or it could take hours if they have to call someone in (e.g. if they want a document specialist to examine the passport because it's damaged in some way). But you'll eventually be let in after being given a very stern talking-to and a piece of paper giving the list of acceptable documents for crossing the US border. (I have one of these pieces of paper around here somewhere...)
In other words, unless you have a really long layover, count on missing your outbound flight.
If at all possible, you should renew the passport before your trip. The US embassy and consulates in the UK can provide same-day emergency passport service if your travel is within 5 days, and regular passport renewal generally within 4 weeks. This will cost you some money, but it will pretty much eliminate the possibility of inconvenience at the US border.
If that's not possible, and your layover is long enough, you may be able to squeeze in a visit to the passport office in Atlanta and get a same-day renewal. Appointments are required though, so you might not be able to do this.
Unfortunately Atlanta has no concept of international transit so you must clear immigration and and customs on arrival from the UK. See http://www.atlanta-airport.com/internationalterminal/passenger/types.html. As a US citizen your son is required to enter and exit the US with his US passport. You could try to do it all on the UK passport but it will be scanned and recorded. These days the Department of Homeland Security is better at data gathering and there is a chance that they will find out.
You can certainly enter Mexico with the UK passport. No visa required and perfectly legal. Getting into the US, however, would be tricky.
Best shots would be to get the US passport renewed or chose a flight that doesn't transit in the US.