So I've been backing up my sites with backup and migrate and I always found weird that the backup&migrate .mysql files are smaller than the "drush sql-dump" sql files. Does anyone know why?
Also what is the quickest way to do a restore using backup&migrate? I usually unzip the gz files that gets saved to my server and just do a mysql drop database and then recreate it again and just fill it in with the sql files. I'm not sure if im doing it the long way or not.
You can restore using backup & migrate itself.
If you've backup and downloaded the file, then you can use Restore tab (/admin/config/system/backup_migrate/restore) to upload the zipped file and restore.
If you've backed up to the Manual Backups Directory, then you can restore from the directory listing (/admin/config/system/backup_migrate/destination/list/files/manual).
There are Drush commands for the above as well, see drush help after you enabled backup & migrate module.
BaM files likely smaller than drush dump files becuase BaM profile is leaving out data from accesslog, cache tables, search history, session history and watchdog as defined by default BaM profile > Default Database Backup Options "Exclude the data from the following tables". I believe BaM drush commands have opt out options that can be used similarly.