Your table is about the 95th percentile among MySQL tables. So, it is certainly possible. However, it will take a long time to insert 28M rows one at a time.
If practical, do one of these:
LOAD DATE INFILE ... -- probably the fastest
INSERT ... VALUES (...), (...), ... -- "batch" load 1000 rows at a time; very fast
Assuming you use
ENGINE=InnoDB (which is preferred), have these settings:
key_buffer_size = 20M
innodb_buffer_pool_size = 1400M
16GB file on 4GB RAM with 32-bit Operating system and 32-bit MySQL -- should be no problem. It's been more than a decade since there was a 4GB limit on files. I don't think Win-7 is too old.
INSERT statements, either one row per statement, or batched. (Batched runs at least 10 times as fast when reloading.)
mysqldump to export for some other type of server, be sure to set various settings, else it will generate MySQL-specific syntax that will croak.
(I don't know the details of the SQL Server side.)
Does SQL Server have a way to "import" from MySQL? MySQL's Workbench can import from various sources; I don't know about exporting.