I want to stay in one of these three towns (or somewhere else you suggest) for three nights while visiting castles and sights in Bavaria. Any help would be appreciated. Thanks in advance.
I spent an hour in downtown Reutte, and I was surprised. Rick recommends it, but it's not a very pretty town. But his tours stay outside in Pinswang. Maybe if you have a car and stay there, you can avoid downtown Reutte.
I think that Füssen, because of its fame, is more expensive than the other two. You might, however, find something in the flat land between Füssen and Hohenschwangau - Schwangau or Horn - at a more reasonable price.
I have spent six nights in three trips in Pfronten. It's definitely an attractive town and with your accommodations you should get a pass for the trains and buses in the area, including the about half hour bus ride from the Bahnhof at Pfronten-Ried to Hohenschwangau. My favorite place to stay in Pfronten is Gastof Aggenstein.
Oberdorf? I don't know of any town in the area call Oberdorf. There is a Bad Oberdorf, near Bad Hindelang. However, Bad Oberdorf to Hohenschwangau by car takes almost an hour, and there is no good public transportation (bus and/or rail) between the two venues.
Perhaps you meant Oberamergau?