Knapsack problems, Assignment problems can all be expressed as (MILP) mixed integer linear programs. MILP is NP-complete. But Knapsack problem is solvable in pseudo-polynomial time using dynamic programming and 0-1 assignment problem can be solved using Hungarian algorithm in polynomial time. So what makes a MILP problem solvable? Is there any reference? Thanks
You may be interested in reading about total unimodularity. An ILP is solvable in polynomial time if the associated matrix is totally unimodular (sufficient but not necessary condition). This explains the tractability of assignment and maximum flow problems.
I'm not aware of any "reason" why knapsack is pseudopolynomial time solvable.