Stored procedures should always be slightly faster than embedded sql as (after the first call) the plan will be cached.
The main reason for always using them though is to abstract the database structure from the client.
For your query
Select field1,field2,field3,field4.. from Table where fieldf1>100 and field2 like 'A%'
There may come a time when the table is too large to run this efficiently so you add a redundent field with the first letter of field2 and change the sp to
Select field1,field2,field3,field4.. from Table where fieldf1>100 and fieldfirst = 'A
You can do this all without affecting the client app.
It also helps security as you don't have to give the user access to data - only to stored procs.