In short - your btc address is part of a just very large number. This number is compressed to the bitcoin address you see(smaller number) and also converted into a private key(letters and numbers, so you can actually read it). This key is needed to create smaller ones(public keys). These public keys, when sending btc, correspond to the transaction data in a way, that this data and number can be checked for specific match between them. The point is that this match can only be checked, but "never" can be created without the private key.
Your balance is calculated from all the transactions on the chain narrowing to your address. In order to get your balance you need all the data from the blockchain. You can receive bitcoins without ever being connected to the internet. Sending however requires you to connect. So the idea is that you number is so large, that no one can practically guess it, and no one can get it from you btc address or public keys. You can't because data is lost while creating them. Since data is lost in theory it is not impossible for one btc address to have many private keys. Well no one has done that practically.
Most of the cryptos are build in similar way.
Can't explain in short how the mining and fees structure works, and also this stuff with the segwit looks at first as a total mess.
The moment when cryptos loose total value, is going to be the moment when the first working quantum computer is in existence.
In theory the quantum computer can generate at once all the large numbers(private keys) possible, so good luck.