The calculated distance (air line) between Canyon Lake and Fredericksburg is approximately 46 miles respectively 74 kilometers.
By car or train, the actual journey to Fredericksburg is certainly longer, as only the direct route (as the crow flies) between Canyon Lake and Fredericksburg has been calculated here.
Air line (approximately)
74 kilometers
40 nautical miles