It depends on currency. For BTC it takes up to several days or even weeks, for ETH - up to several hours, for DGB it could be 1 min. So you need to check every coin separately for transaction time
Who said it takes weeks for BTC tranactions,already the situation got normal only there are 10K unconfirmed transactions are in blockchain so the fee is very very less,less than a dollar and it will get confirmed in less than 30 minutes,if you have priority fee then the transaction will get confirmed in minutes.We need to use segwit address for more faster transactions than in legacy address.
It depends on the currency and their traffic in their network,if they have high traffic the fee will be high and the time also more.But these situations will be resolved when lightning network was implemented.