An escrow program is a great example to get started with Solana, it allows discovering the main principles and to interact with the token program.
While this is an anchor E2E example, this doesn't cover at all the underlying principles, i recommend to get started with The "vanilla" Solana Paulx escrow tutorial
The program is similar but not exactly https://github.com/project-serum/anchor/tree/master/tests/escrow
Some modification have been made to make it more anchor-y and easier to handle in the UI.