Yes, MySQL can store billions of rows in a single table.
See my answer to Maximum number of records in a MySQL database table.
How to query a table with billions of rows in it is a different problem. You should look into Table Partitioning, with the understanding that how you partition a table must be designed carefully with respect to the queries you need to run against the table.
Also, don't use MyISAM if you don't want your data to become corrupted. Use InnoDB.