Others have already recommended Mastering BitcoinMastering Bitcoin and the whitepaperwhitepaper, and I'd strongly agree. Mastering Bitcoin's section on transactions is particularly useful.
However, nobody's recommended the developer guide at bitcoinDeveloper Guide at bitcoin.org yet, and it's one of the better resources for learning about Bitcoin, in my opinion.
For less technical resources, a good starting place would be Andreas Antonopoulos and Balaji Srinivasan's videos on Youtube.