Inputs on handling large volumes of data for specific tables in SQL Server standard
Use an archive table and a live table.

Don't use a "table per year": this quickly becomes messy and you'll end up needing dynamic SQL when you UNION + view becomes a bottleneck

10 million rows isn't a lot though, and 30 columns is quite wide. So, some options:


review data types to reduce data in disk. 

Do you need nvarchar? 
Can you use smalldatetime?
Do you have int where tinyint will do? 
(n)varchar when you have fixed length data?

do you have regular index and statistics maintenance?
do you have incorrect or missing indexes?
have you looked at most expensive queries?