I had a very similar experience when I took a processor design class in college. At first in the class we started learning the binary codes for each instruction, which bits were the registers, instruction bits etc. It seemed so pointless at the time. When we finally got to the end and it clicked that those bits were physically turning on and off gates, it blew my mind.